Kubernetes v1.36 introduces server-side sharded list and watch, an alpha feature designed to improve scalability for controllers managing large clusters. By moving resource filtering to the API server, this mechanism reduces network bandwidth and CPU overhead caused by redundant event processing in horizontally scaled controller replicas.
Key points
Client-side sharding processes the full event stream, wasting CPU and network resources on discarded objects.
Server-side sharding moves filtering to the API server, ensuring replicas only receive relevant data.
The mechanism uses a 64-bit FNV-1a hash of specific fields like UID or namespace to distribute load.
Controllers can verify server support for sharding by checking for the shardInfo field in response metadata.
The feature requires enabling the ShardedListAndWatch gate and is intended for large-scale cluster environments.