etcd 3.7.0-beta: RangeStream and What Developers Need to Know

Why etcd Matters to Developers
If Kubernetes is the brain of your system, etcd is its memory. Everything Kubernetes knows โ which pods are running, which services expose which ports, what your ConfigMaps contain โ lives in etcd. When etcd slows down, your entire cluster slows down with it.
On May 20, 2026, SIG-etcd officially announced the first beta of etcd 3.7.0. This is the biggest upgrade since 3.6.0 (released November 2025). The two most notable changes: RangeStream and the complete removal of v2store.
RangeStream: Stop Buffering Entire Result Sets
The Old Problem
In etcd 3.6 and earlier, when you query a range of keys (e.g., fetch all pods in a namespace), etcd reads the entire result set into memory and returns it all at once. On large clusters, this causes:
- Unpredictable latency: the client waits until every key is read
- Memory spikes: both the server and client must buffer the full result set
- Timeout risks: requests can time out before results are fully returned
# Old way: fetch all keys โ can take seconds on large clusters
etcdctl get /registry/pods --prefix
# Client blocks until EVERY key has been read
How RangeStream Fixes This
RangeStream is a new RPC that lets etcd stream results in chunks. The client receives data incrementally instead of waiting for everything:
# etcd 3.7: stream results chunk by chunk
etcdctl get /registry/pods --prefix --stream
# Results arrive gradually โ the client can process the first chunk immediately
This pattern is familiar to developers who've worked with gRPC server-side streaming. Each chunk is a small set of keys, which delivers:
- Predictable latency: the first chunk arrives in milliseconds
- Stable memory usage: only the current chunk needs to be buffered
- No timeouts: data flows continuously, avoiding bottlenecks
This matters especially for the Kubernetes API server โ when you run kubectl get pods --all-namespaces on a cluster with thousands of pods, the API server queries etcd for the list. RangeStream makes this query significantly faster and more stable.
Who Built RangeStream?
Jeffrey Ying, a software engineer at Google and a relatively new etcd contributor, led the RangeStream implementation. He said: "I've always been fascinated by database internals, and building RangeStream was a great opportunity to solve a bottleneck we were hitting in production with Kubernetes."
This speaks volumes: etcd is an open-source project where new contributors can still make a massive impact.
Goodbye v2store โ 100% V3
Here's the milestone: etcd 3.7 is the first release that is 100% v3store, with zero traces of v2store remaining. What's been removed:
- v2 discovery
- v2 bootstrap
- v2 request handling
- v2 client entirely
If you're still running etcd v3.4 or earlier (EOL since May 15, 2026), now is the time to upgrade. v3.4 will receive no more security patches after the end of May 2026.
# Check your etcd cluster version
kubectl get pods -n kube-system -l component=etcd -o jsonpath='{.items[0].spec.containers[0].image}'
# Example output: registry.k8s.io/etcd:3.5.16-0
Other Notable Changes
bbolt 1.5.0
bbolt is the embedded key-value database that etcd uses for on-disk storage. bbolt 1.5.0 brings performance improvements and bug fixes โ directly affecting etcd's read/write speed.
raft 3.7.0
The Raft algorithm maintains consistency across etcd nodes in a cluster. raft 3.7.0 improves election timeouts and leader stability โ reducing unnecessary leadership changes during minor network partitions.
Removal of Legacy Experimental Flags
Many deprecated experimental flags have been removed, including ones dating back to etcd v3.3/v3.4. If your upgrade scripts still use --experimental-*, audit them carefully before upgrading.
What Developers Should Do
- Test the beta now: Run etcd 3.7.0-beta.0 in staging/dev environments. Local Kubernetes clusters (kind, minikube) can use the new etcd version for testing
- Upgrade from v3.4: If you're still on v3.4, plan an upgrade to at least v3.5 before v3.7 reaches GA
- Check v2store dependencies: Use
etcdctl endpoint statusto check your storage version. If you're still on v2, migrate immediately - Try RangeStream in your applications: If you have apps that query etcd directly, experiment with the RangeStream RPC instead of regular Range calls
# Pull etcd 3.7.0-beta.0
docker pull gcr.io/etcd-development/etcd:v3.7.0-beta.0
# Run a local test cluster
docker run --rm -d --name etcd-beta \
-p 2379:2379 -p 2380:2380 \
gcr.io/etcd-development/etcd:v3.7.0-beta.0 \
/usr/local/bin/etcd \
--data-dir=/etc-data \
--name node1 \
--listen-client-urls http://0.0.0.0:2379 \
--advertise-client-urls http://0.0.0.0:2379 \
--listen-peer-urls http://0.0.0.0:2380
# Test RangeStream
etcdctl get /test --prefix --stream
Expected Timeline
SIG-etcd expects to release a few more betas during May-June 2026, focused on protobuf library refactoring. Release candidates and the final GA release are likely by late June or early July 2026.
Summary
etcd 3.7.0 is a significant upgrade for the entire Kubernetes ecosystem. RangeStream solves a real problem developers face daily โ slow queries on large clusters. Removing v2store marks a milestone: etcd has truly matured after nearly a decade of development.
If you run a Kubernetes cluster, monitoring etcd isn't optional โ it's the foundation of everything. Test the beta, report issues, and prepare your upgrade path today.
Have you tested etcd 3.7.0-beta yet? Running into issues with RangeStream? Share your experience in the comments.
This post was written with AI assistance (Amy ๐ธ). Content has been reviewed by the author.
Related Posts
Crossplane: When IaC Meets Kubernetes โ Can It Replace Terraform?
Crossplane just achieved CNCF graduation, marking the maturity of this Kubernetes-native IaC tool. Is this the beginning of Terraform's decline in the platform engineering era?
Kubernetes Gateway API: Goodbye Ingress, Hello Gateway
Ingress NGINX is no longer receiving security patches. Gateway API is the next step โ more flexible, standardized, and annotation-free.
Kubernetes v1.36: Workload-Aware Scheduling โ AI/ML Workloads Finally Get Fair Treatment
Kubernetes v1.36 launched on May 13, 2026 with Workload-Aware Scheduling. New PodGroup API, gang scheduling, topology-aware scheduling โ the biggest update yet for AI/ML workloads on K8s.