# watch

Published articles for watch.

This is one page of public article previews, not the complete archive. Follow Next page to continue. Summaries are not the original full articles.

## kube-apiserver / Kubernetes 控制面内核：storage、cacher、Admission 与 APF

DevFeed: [kube-apiserver / Kubernetes 控制面内核：storage、cacher、Admission 与 APF](<https://devfeed.tech/articles/kube-apiserver-kubernetes-storage-cacher-admission-apf-33974.md>)

Original publisher: [Read original article](<https://quant67.com/post/apiserver/index.html>)

Author: Liao Tonglang

Published: 2026-08-28T00:00:00Z

Content type: article

Language: zh

Sources: [土法炼钢 - 系统与基础设施](<https://devfeed.tech/sources/source-4.md>)

Topics: [Kubernetes](<https://devfeed.tech/topics/kubernetes.md>), [etcd](<https://devfeed.tech/topics/etcd.md>), [Caching](<https://devfeed.tech/topics/caching.md>), [API](<https://devfeed.tech/topics/api.md>), [site-reliability-engineering](<https://devfeed.tech/topics/site-reliability-engineering.md>), [Authentication](<https://devfeed.tech/topics/authentication.md>), [Authorization](<https://devfeed.tech/topics/authorization.md>), [rbac](<https://devfeed.tech/topics/rbac.md>)

Tags: [admission](<https://devfeed.tech/tags/admission.md>), [apf](<https://devfeed.tech/tags/apf.md>), [apiserver](<https://devfeed.tech/tags/apiserver.md>), [authentication](<https://devfeed.tech/tags/authentication.md>), [authorization](<https://devfeed.tech/tags/authorization.md>), [cacher](<https://devfeed.tech/tags/cacher.md>), [control-plane](<https://devfeed.tech/tags/control-plane.md>), [distributed](<https://devfeed.tech/tags/distributed.md>), [etcd](<https://devfeed.tech/tags/etcd.md>), [kubernetes](<https://devfeed.tech/tags/kubernetes.md>), [oidc](<https://devfeed.tech/tags/oidc.md>), [pagination](<https://devfeed.tech/tags/pagination.md>), [plan](<https://devfeed.tech/tags/plan.md>), [rbac](<https://devfeed.tech/tags/rbac.md>), [resourceversion](<https://devfeed.tech/tags/resourceversion.md>), [storage](<https://devfeed.tech/tags/storage.md>), [v1-30-3](<https://devfeed.tech/tags/v1-30-3.md>), [watch](<https://devfeed.tech/tags/watch.md>), [watch-cache](<https://devfeed.tech/tags/watch-cache.md>), [webhook](<https://devfeed.tech/tags/webhook.md>)

### AI overview

This article introduces a 16-part series on the kube-apiserver production request path, covering storage.Interface and etcd3, resourceVersion, watch cache behavior, List and Watch operations, Admission and Webhooks, authentication, authorization, auditing, APF, and extension boundaries. It explains how to distinguish failures across these layers and when to investigate kube-apiserver instead of directly querying etcd. The discussion is anchored to Kubernetes v1.30.3 and etcd v3.5.33, with experiments explicitly noted as not yet run.

### Source excerpt

补齐 etcd 系列 K8s 耦合篇之上的 kube-apiserver 生产内核：storage.Interface、watch cache、resourceVersion、Admission/Webhook、APF，并以排障与相对 etcd 的分层收束。

## 【kube-apiserver】控制面全景：缺口、五轴坐标系与 16 篇路线

DevFeed: [【kube-apiserver】控制面全景：缺口、五轴坐标系与 16 篇路线](<https://devfeed.tech/articles/kube-apiserver-16-33957.md>)

Original publisher: [Read original article](<https://quant67.com/post/apiserver/01-controlplane-overview/01-controlplane-overview.html>)

Author: Liao Tonglang

Published: 2026-08-28T00:00:00Z

Content type: tutorial

Language: zh

Sources: [土法炼钢 - 系统与基础设施](<https://devfeed.tech/sources/source-4.md>)

Topics: [Kubernetes](<https://devfeed.tech/topics/kubernetes.md>), [etcd](<https://devfeed.tech/topics/etcd.md>)

Tags: [admission](<https://devfeed.tech/tags/admission.md>), [apf](<https://devfeed.tech/tags/apf.md>), [apiserver](<https://devfeed.tech/tags/apiserver.md>), [auth](<https://devfeed.tech/tags/auth.md>), [control-plane](<https://devfeed.tech/tags/control-plane.md>), [distributed](<https://devfeed.tech/tags/distributed.md>), [etcd](<https://devfeed.tech/tags/etcd.md>), [kubernetes](<https://devfeed.tech/tags/kubernetes.md>), [network](<https://devfeed.tech/tags/network.md>), [overview](<https://devfeed.tech/tags/overview.md>), [storage](<https://devfeed.tech/tags/storage.md>), [v1-30-3](<https://devfeed.tech/tags/v1-30-3.md>), [watch](<https://devfeed.tech/tags/watch.md>), [watch-cache](<https://devfeed.tech/tags/watch-cache.md>)

### AI overview

This article maps gaps in existing coverage of the Kubernetes control plane and proposes a 16-part reading route organized around Storage, Watch, Admission, Auth, and APF. It anchors the discussion to Kubernetes v1.30.3 and etcd v3.5.33, focusing on how requests travel through kube-apiserver and how to distinguish admission, caching, backend, and timeout failures.

### Source excerpt

相对 etcd/13、distributed/50、k8s-network 补齐 kube-apiserver 生产内核缺口；以 Storage/Watch/Admission/Auth/APF 五轴为坐标系定义 16 篇阅读路线；版本锚定 Kubernetes v1.30.3。

## 【kube-apiserver】Watch 路径（服务端）：长连接、410 Gone 与 timeout

DevFeed: [【kube-apiserver】Watch 路径（服务端）：长连接、410 Gone 与 timeout](<https://devfeed.tech/articles/kube-apiserver-watch-410-gone-timeout-33963.md>)

Original publisher: [Read original article](<https://quant67.com/post/apiserver/07-watch-server/07-watch-server.html>)

Author: Liao Tonglang

Published: 2026-08-28T00:00:00Z

Content type: article

Language: zh

Sources: [土法炼钢 - 系统与基础设施](<https://devfeed.tech/sources/source-4.md>)

Topics: [Kubernetes](<https://devfeed.tech/topics/kubernetes.md>), [HTTP](<https://devfeed.tech/topics/http.md>), [kubectl](<https://devfeed.tech/topics/kubectl.md>)

Tags: [410-gone](<https://devfeed.tech/tags/410-gone.md>), [apiserver](<https://devfeed.tech/tags/apiserver.md>), [bookmark](<https://devfeed.tech/tags/bookmark.md>), [cacher](<https://devfeed.tech/tags/cacher.md>), [distributed](<https://devfeed.tech/tags/distributed.md>), [etcd](<https://devfeed.tech/tags/etcd.md>), [etcd3](<https://devfeed.tech/tags/etcd3.md>), [informer](<https://devfeed.tech/tags/informer.md>), [kubernetes](<https://devfeed.tech/tags/kubernetes.md>), [resourceversion](<https://devfeed.tech/tags/resourceversion.md>), [rest](<https://devfeed.tech/tags/rest.md>), [timeout](<https://devfeed.tech/tags/timeout.md>), [v1-30-3](<https://devfeed.tech/tags/v1-30-3.md>), [watch](<https://devfeed.tech/tags/watch.md>)

### AI overview

This article explains the Kubernetes v1.30.3 apiserver Watch path, from the REST handler through cacher and etcd3 watchers. It distinguishes 410 Gone caused by cacher ring-buffer eviction from errors propagated from etcd compaction, and covers resourceVersion semantics, timeouts, bookmarks, connection lifecycle, and the boundary with client-go Informer.

### Source excerpt

钉 Kubernetes v1.30.3 服务端 Watch 路径：从 REST handler 到 cacher/etcd3 watcher 的建立过程、resourceVersion=0 与具体 RV 的语义差异、410 Gone 与 etcd ErrCompacted 的映射、bookmark 推送与连接生命周期，以及与 client-go Informer 的边界。

## 【kube-apiserver】resourceVersion 与 Revision 映射：mod revision、continue 与一致性读期望

DevFeed: [【kube-apiserver】resourceVersion 与 Revision 映射：mod revision、continue 与一致性读期望](<https://devfeed.tech/articles/kube-apiserver-resourceversion-revision-mod-revision-continue-33960.md>)

Original publisher: [Read original article](<https://quant67.com/post/apiserver/04-resource-version/04-resource-version.html>)

Author: Liao Tonglang

Published: 2026-08-28T00:00:00Z

Content type: tutorial

Language: zh

Sources: [土法炼钢 - 系统与基础设施](<https://devfeed.tech/sources/source-4.md>)

Topics: [Kubernetes](<https://devfeed.tech/topics/kubernetes.md>), [API](<https://devfeed.tech/topics/api.md>), [Caching](<https://devfeed.tech/topics/caching.md>)

Tags: [410-gone](<https://devfeed.tech/tags/410-gone.md>), [api](<https://devfeed.tech/tags/api.md>), [apiserver](<https://devfeed.tech/tags/apiserver.md>), [cache](<https://devfeed.tech/tags/cache.md>), [consistency](<https://devfeed.tech/tags/consistency.md>), [continue-token](<https://devfeed.tech/tags/continue-token.md>), [distributed](<https://devfeed.tech/tags/distributed.md>), [etcd](<https://devfeed.tech/tags/etcd.md>), [kubernetes](<https://devfeed.tech/tags/kubernetes.md>), [pagination](<https://devfeed.tech/tags/pagination.md>), [resourceversion](<https://devfeed.tech/tags/resourceversion.md>), [revision](<https://devfeed.tech/tags/revision.md>), [v1-30-3](<https://devfeed.tech/tags/v1-30-3.md>), [watch](<https://devfeed.tech/tags/watch.md>)

### AI overview

This article explains how Kubernetes resourceVersion maps to etcd mod_revision, including the different semantics for individual objects and List responses. It covers Watch starting points, continue-token pagination and its costs, compaction-related 410 Gone errors, and consistency differences between watch-cache and etcd read paths. The discussion is anchored to Kubernetes v1.30.3 and etcd v3.5.33.

### Source excerpt

钉 Kubernetes resourceVersion 字段与 etcd mod revision 的对应关系；分析 continue token 的分页语义与成本；说明不同 List 路径的一致性期望差异；以及 410 Gone 与 ErrCompacted 的分列。版本锚定 Kubernetes v1.30.3 / etcd v3.5.33。

## 【kube-apiserver】排障五轴：Storage、Watch、Admission、Auth、APF

DevFeed: [【kube-apiserver】排障五轴：Storage、Watch、Admission、Auth、APF](<https://devfeed.tech/articles/kube-apiserver-storage-watch-admission-auth-apf-33971.md>)

Original publisher: [Read original article](<https://quant67.com/post/apiserver/15-troubleshoot/15-troubleshoot.html>)

Author: Liao Tonglang

Published: 2026-08-28T00:00:00Z

Content type: tutorial

Language: zh

Sources: [土法炼钢 - 系统与基础设施](<https://devfeed.tech/sources/source-4.md>)

Topics: [Kubernetes](<https://devfeed.tech/topics/kubernetes.md>), [API](<https://devfeed.tech/topics/api.md>), [etcd](<https://devfeed.tech/topics/etcd.md>)

Tags: [admission](<https://devfeed.tech/tags/admission.md>), [apf](<https://devfeed.tech/tags/apf.md>), [apiserver](<https://devfeed.tech/tags/apiserver.md>), [auth](<https://devfeed.tech/tags/auth.md>), [authz](<https://devfeed.tech/tags/authz.md>), [distributed](<https://devfeed.tech/tags/distributed.md>), [etcd](<https://devfeed.tech/tags/etcd.md>), [five-axes](<https://devfeed.tech/tags/five-axes.md>), [kubernetes](<https://devfeed.tech/tags/kubernetes.md>), [metrics](<https://devfeed.tech/tags/metrics.md>), [storage](<https://devfeed.tech/tags/storage.md>), [troubleshooting](<https://devfeed.tech/tags/troubleshooting.md>), [v1-30-3](<https://devfeed.tech/tags/v1-30-3.md>), [watch](<https://devfeed.tech/tags/watch.md>)

### AI overview

A troubleshooting guide for kube-apiserver organized around five diagnostic axes: Storage, Watch, Admission, Auth, and API Priority and Fairness. It maps symptoms such as 504, 410 Gone, 401, 403, webhook timeouts, list storms, and OOM to likely axes, explains when to investigate etcd, and emphasizes that commands and metrics were not executed in the author's environment.

### Source excerpt

按 Storage/Watch/Admission/Auth/APF 五轴做症状否证；给出完整五轴命令表与症状->轴映射（504、410、401、403、webhook 超时、List 风暴、OOM）；说明 apiserver_request_duration_seconds 等核心 metrics 语义；并提供决策树：何时穿透到 etcd/15，何时留在 apiserver 轴。

## 【etcd】MVCC 数据模型：Revision、keyIndex 与 generation

DevFeed: [【etcd】MVCC 数据模型：Revision、keyIndex 与 generation](<https://devfeed.tech/articles/etcd-mvcc-revision-keyindex-generation-33986.md>)

Original publisher: [Read original article](<https://quant67.com/post/etcd/04-mvcc-model/04-mvcc-model.html>)

Author: Liao Tonglang

Published: 2026-08-26T00:00:00Z

Content type: tutorial

Language: zh

Sources: [土法炼钢 - 系统与基础设施](<https://devfeed.tech/sources/source-4.md>)

Topics: [etcd](<https://devfeed.tech/topics/etcd.md>), [Raft](<https://devfeed.tech/topics/raft.md>), [Kubernetes](<https://devfeed.tech/topics/kubernetes.md>)

Tags: [compaction](<https://devfeed.tech/tags/compaction.md>), [distributed](<https://devfeed.tech/tags/distributed.md>), [etcd](<https://devfeed.tech/tags/etcd.md>), [generation](<https://devfeed.tech/tags/generation.md>), [keyindex](<https://devfeed.tech/tags/keyindex.md>), [kubernetes](<https://devfeed.tech/tags/kubernetes.md>), [mvcc](<https://devfeed.tech/tags/mvcc.md>), [raft](<https://devfeed.tech/tags/raft.md>), [revision](<https://devfeed.tech/tags/revision.md>), [treeindex](<https://devfeed.tech/tags/treeindex.md>), [v3](<https://devfeed.tech/tags/v3.md>), [v3-5](<https://devfeed.tech/tags/v3-5.md>), [v3-5-33](<https://devfeed.tech/tags/v3-5-33.md>), [watch](<https://devfeed.tech/tags/watch.md>)

### AI overview

This article analyzes etcd v3.5.33's MVCC data model through three concepts: globally ordered revisions, keyIndex generations that track key lifecycles, and the division of responsibilities between the in-memory treeIndex and the bbolt backend. It explains how these structures support historical Watch replay, transaction comparisons, compaction, and Kubernetes resourceVersion semantics, while distinguishing etcd revisions from Raft indexes.

### Source excerpt

拆解 etcd v3.5.33 的 Revision (main, sub) 全序、keyIndex/generation 生命周期与 treeIndex 分工；简要对照 v2 平面键空间，交代 MVCC 与 Watch/compaction 的语义基础。

## 【etcd】生产全景：缺口、五轴坐标系与 16 篇路线

DevFeed: [【etcd】生产全景：缺口、五轴坐标系与 16 篇路线](<https://devfeed.tech/articles/etcd-16-33983.md>)

Original publisher: [Read original article](<https://quant67.com/post/etcd/01-production-overview/01-production-overview.html>)

Author: Liao Tonglang

Published: 2026-08-26T00:00:00Z

Content type: article

Language: zh

Sources: [土法炼钢 - 系统与基础设施](<https://devfeed.tech/sources/source-4.md>)

Topics: [etcd](<https://devfeed.tech/topics/etcd.md>), [Kubernetes](<https://devfeed.tech/topics/kubernetes.md>)

Tags: [control-plane](<https://devfeed.tech/tags/control-plane.md>), [distributed](<https://devfeed.tech/tags/distributed.md>), [etcd](<https://devfeed.tech/tags/etcd.md>), [kubernetes](<https://devfeed.tech/tags/kubernetes.md>), [lease](<https://devfeed.tech/tags/lease.md>), [mvcc](<https://devfeed.tech/tags/mvcc.md>), [overview](<https://devfeed.tech/tags/overview.md>), [raft](<https://devfeed.tech/tags/raft.md>), [v3-5](<https://devfeed.tech/tags/v3-5.md>), [v3-5-33](<https://devfeed.tech/tags/v3-5-33.md>), [wal](<https://devfeed.tech/tags/wal.md>), [watch](<https://devfeed.tech/tags/watch.md>)

### AI overview

This article positions an etcd production series by identifying gaps in existing coverage and defining five troubleshooting axes spanning Raft consensus, WAL persistence and recovery, MVCC storage and capacity, Watch behavior, and Lease handling. It anchors the series to etcd v3.5.33 and points to Kubernetes control-plane coupling and a 16-article reading route.

### Source excerpt

相对 distributed/50、39、13 钉清 etcd 生产内核缺口；定义 Raft/WAL/MVCC/Watch/Lease 五轴排障坐标系，给出 16 篇阅读路线与 K8s 控制面耦合指针。版本锚定 v3.5.33。

## 【etcd】Lease 与 KeepAlive：TTL、checkpoint 与 Leader 切换

DevFeed: [【etcd】Lease 与 KeepAlive：TTL、checkpoint 与 Leader 切换](<https://devfeed.tech/articles/etcd-lease-keepalive-ttl-checkpoint-leader-33992.md>)

Original publisher: [Read original article](<https://quant67.com/post/etcd/10-lease/10-lease.html>)

Author: Liao Tonglang

Published: 2026-08-26T00:00:00Z

Content type: tutorial

Language: zh

Sources: [土法炼钢 - 系统与基础设施](<https://devfeed.tech/sources/source-4.md>)

Topics: [etcd](<https://devfeed.tech/topics/etcd.md>), [Raft](<https://devfeed.tech/topics/raft.md>), [Kubernetes](<https://devfeed.tech/topics/kubernetes.md>), [Remote Procedure Call (RPC)](<https://devfeed.tech/topics/rpc.md>)

Tags: [api](<https://devfeed.tech/tags/api.md>), [checkpoint](<https://devfeed.tech/tags/checkpoint.md>), [client](<https://devfeed.tech/tags/client.md>), [concurrency](<https://devfeed.tech/tags/concurrency.md>), [distributed](<https://devfeed.tech/tags/distributed.md>), [etcd](<https://devfeed.tech/tags/etcd.md>), [follower](<https://devfeed.tech/tags/follower.md>), [k8s](<https://devfeed.tech/tags/k8s.md>), [keepalive](<https://devfeed.tech/tags/keepalive.md>), [kubernetes](<https://devfeed.tech/tags/kubernetes.md>), [lease](<https://devfeed.tech/tags/lease.md>), [lessor](<https://devfeed.tech/tags/lessor.md>), [primary](<https://devfeed.tech/tags/primary.md>), [raft](<https://devfeed.tech/tags/raft.md>), [ttl](<https://devfeed.tech/tags/ttl.md>), [v3](<https://devfeed.tech/tags/v3.md>), [v3-5-33](<https://devfeed.tech/tags/v3-5-33.md>), [watch](<https://devfeed.tech/tags/watch.md>)

### AI overview

This article explains etcd v3.5.33 lease behavior, focusing on the lessor's primary, demote, and promote roles, the KeepAlive renewal path that normally bypasses Raft, lease checkpointing, and TTL changes during leader transitions. It also discusses implications for Kubernetes Node Leases and distributed locks.

### Source excerpt

钉 etcd v3.5.33 lessor 的 primary/demote/promote、KeepAlive 不经 Raft 的 Renew 路径、LeaseCheckpoint 与 Promote 时 TTL 展期，以及 Leader 切换对 Node Lease 的排障落格。

## 【etcd】Watch 机制：watchableStore、synced/unsynced 与 ErrCompacted

DevFeed: [【etcd】Watch 机制：watchableStore、synced/unsynced 与 ErrCompacted](<https://devfeed.tech/articles/etcd-watch-watchablestore-synced-unsynced-errcompacted-33991.md>)

Original publisher: [Read original article](<https://quant67.com/post/etcd/09-watch/09-watch.html>)

Author: Liao Tonglang

Published: 2026-08-26T00:00:00Z

Content type: tutorial

Language: zh

Sources: [土法炼钢 - 系统与基础设施](<https://devfeed.tech/sources/source-4.md>)

Topics: [etcd](<https://devfeed.tech/topics/etcd.md>), [Raft](<https://devfeed.tech/topics/raft.md>), [Remote Procedure Call (RPC)](<https://devfeed.tech/topics/rpc.md>), [Kubernetes](<https://devfeed.tech/topics/kubernetes.md>)

Tags: [apiserver](<https://devfeed.tech/tags/apiserver.md>), [apply](<https://devfeed.tech/tags/apply.md>), [compaction](<https://devfeed.tech/tags/compaction.md>), [distributed](<https://devfeed.tech/tags/distributed.md>), [errcompacted](<https://devfeed.tech/tags/errcompacted.md>), [etcd](<https://devfeed.tech/tags/etcd.md>), [io](<https://devfeed.tech/tags/io.md>), [k8s](<https://devfeed.tech/tags/k8s.md>), [kubernetes](<https://devfeed.tech/tags/kubernetes.md>), [lag](<https://devfeed.tech/tags/lag.md>), [leader](<https://devfeed.tech/tags/leader.md>), [lease](<https://devfeed.tech/tags/lease.md>), [mvcc](<https://devfeed.tech/tags/mvcc.md>), [notify](<https://devfeed.tech/tags/notify.md>), [raft](<https://devfeed.tech/tags/raft.md>), [range](<https://devfeed.tech/tags/range.md>), [restore](<https://devfeed.tech/tags/restore.md>), [revision](<https://devfeed.tech/tags/revision.md>), [rpc](<https://devfeed.tech/tags/rpc.md>), [v3-5](<https://devfeed.tech/tags/v3-5.md>), [v3-5-33](<https://devfeed.tech/tags/v3-5-33.md>), [watch](<https://devfeed.tech/tags/watch.md>), [watchablestore](<https://devfeed.tech/tags/watchablestore.md>)

### AI overview

This article examines the etcd v3.5.33 watchableStore implementation, including synced and unsynced watcher groups, victims caused by backpressure, Apply-time notification, historical synchronization, and the ErrCompacted client resynchronization boundary. It also discusses event ordering, follower watch progress, and interactions with Kubernetes apiserver watch caches.

### Source excerpt

钉 etcd v3.5.33 watchableStore 的 synced/unsynced/victims 三分法、Apply 后 notify 与历史追赶 syncWatchersLoop，以及 CompactRevision 触发 ErrCompacted 时的客户端重同步边界。

## 【etcd】treeIndex 与 Apply 管道：propose -\> commit -\> apply

DevFeed: [【etcd】treeIndex 与 Apply 管道：propose -\> commit -\> apply](<https://devfeed.tech/articles/etcd-treeindex-apply-propose-commit-apply-33988.md>)

Original publisher: [Read original article](<https://quant67.com/post/etcd/06-apply-pipeline/06-apply-pipeline.html>)

Author: Liao Tonglang

Published: 2026-08-26T00:00:00Z

Content type: tutorial

Language: zh

Sources: [土法炼钢 - 系统与基础设施](<https://devfeed.tech/sources/source-4.md>)

Topics: [etcd](<https://devfeed.tech/topics/etcd.md>), [Raft](<https://devfeed.tech/topics/raft.md>), [Back end](<https://devfeed.tech/topics/backend.md>)

Tags: [applied-index](<https://devfeed.tech/tags/applied-index.md>), [apply](<https://devfeed.tech/tags/apply.md>), [backend](<https://devfeed.tech/tags/backend.md>), [bbolt](<https://devfeed.tech/tags/bbolt.md>), [commit](<https://devfeed.tech/tags/commit.md>), [compaction](<https://devfeed.tech/tags/compaction.md>), [distributed](<https://devfeed.tech/tags/distributed.md>), [etcd](<https://devfeed.tech/tags/etcd.md>), [index](<https://devfeed.tech/tags/index.md>), [kubernetes](<https://devfeed.tech/tags/kubernetes.md>), [mvcc](<https://devfeed.tech/tags/mvcc.md>), [raft](<https://devfeed.tech/tags/raft.md>), [range](<https://devfeed.tech/tags/range.md>), [recovery](<https://devfeed.tech/tags/recovery.md>), [revision](<https://devfeed.tech/tags/revision.md>), [store](<https://devfeed.tech/tags/store.md>), [treeindex](<https://devfeed.tech/tags/treeindex.md>), [txn](<https://devfeed.tech/tags/txn.md>), [v3-5](<https://devfeed.tech/tags/v3-5.md>), [wal](<https://devfeed.tech/tags/wal.md>), [watch](<https://devfeed.tech/tags/watch.md>)

### AI overview

This tutorial explains the etcd v3.5.33 apply pipeline from Raft commit to MVCC application. It covers the separation between propose, commit, and apply; the roles of treeIndex and bbolt; consistent-index updates; watch notification timing; and troubleshooting committed-versus-applied lag.

### Source excerpt

走读 etcd v3.5.33 从 Raft commit 到 MVCC apply 的串行管道：treeIndex 与 bbolt 分工、consistent index、watchableStore 通知触发点，以及 committed/applied 分列排障。

## 【etcd】单 Raft 组与服务器角色：Leader、Follower、Learner 与 request 路由

DevFeed: [【etcd】单 Raft 组与服务器角色：Leader、Follower、Learner 与 request 路由](<https://devfeed.tech/articles/etcd-raft-leader-follower-learner-request-33984.md>)

Original publisher: [Read original article](<https://quant67.com/post/etcd/02-single-raft/02-single-raft.html>)

Author: Liao Tonglang

Published: 2026-08-26T00:00:00Z

Content type: article

Language: zh

Sources: [土法炼钢 - 系统与基础设施](<https://devfeed.tech/sources/source-4.md>)

Topics: [etcd](<https://devfeed.tech/topics/etcd.md>), [Raft](<https://devfeed.tech/topics/raft.md>), [gRPC](<https://devfeed.tech/topics/grpc.md>)

Tags: [apiserver](<https://devfeed.tech/tags/apiserver.md>), [apply](<https://devfeed.tech/tags/apply.md>), [atomic](<https://devfeed.tech/tags/atomic.md>), [commit](<https://devfeed.tech/tags/commit.md>), [compaction](<https://devfeed.tech/tags/compaction.md>), [distributed](<https://devfeed.tech/tags/distributed.md>), [etcd](<https://devfeed.tech/tags/etcd.md>), [etcdserver](<https://devfeed.tech/tags/etcdserver.md>), [follower](<https://devfeed.tech/tags/follower.md>), [kubernetes](<https://devfeed.tech/tags/kubernetes.md>), [leader](<https://devfeed.tech/tags/leader.md>), [learner](<https://devfeed.tech/tags/learner.md>), [linearizable](<https://devfeed.tech/tags/linearizable.md>), [raft](<https://devfeed.tech/tags/raft.md>), [request](<https://devfeed.tech/tags/request.md>), [single-raft-group](<https://devfeed.tech/tags/single-raft-group.md>), [v3](<https://devfeed.tech/tags/v3.md>), [v3-5](<https://devfeed.tech/tags/v3-5.md>), [v3-5-33](<https://devfeed.tech/tags/v3-5-33.md>), [wal](<https://devfeed.tech/tags/wal.md>), [watch](<https://devfeed.tech/tags/watch.md>)

### AI overview

This article explains how etcd v3.5.33 embeds a single Raft group, separates EtcdServer responsibilities from the Raft library, and routes requests across Leader, Follower, and Learner roles. It covers gRPC write forwarding, linearizable and serializable reads, and the handling of watch, lease, and mutating requests.

### Source excerpt

钉清 etcd v3.5.33 单 Raft 组拓扑、EtcdServer 与 go.etcd.io/raft/v3 边界、Leader/Follower/Learner 角色及 gRPC 写读路由；与 distributed/13 分工。

## 【etcd】排障五轴：Raft/WAL/MVCC/Watch/Lease 口令表

DevFeed: [【etcd】排障五轴：Raft/WAL/MVCC/Watch/Lease 口令表](<https://devfeed.tech/articles/etcd-raft-wal-mvcc-watch-lease-33997.md>)

Original publisher: [Read original article](<https://quant67.com/post/etcd/15-troubleshoot/15-troubleshoot.html>)

Author: Liao Tonglang

Published: 2026-08-26T00:00:00Z

Content type: tutorial

Language: zh

Sources: [土法炼钢 - 系统与基础设施](<https://devfeed.tech/sources/source-4.md>)

Topics: [etcd](<https://devfeed.tech/topics/etcd.md>), [Kubernetes](<https://devfeed.tech/topics/kubernetes.md>)

Tags: [apiserver](<https://devfeed.tech/tags/apiserver.md>), [applied-index](<https://devfeed.tech/tags/applied-index.md>), [apply](<https://devfeed.tech/tags/apply.md>), [committed-index](<https://devfeed.tech/tags/committed-index.md>), [compaction](<https://devfeed.tech/tags/compaction.md>), [distributed](<https://devfeed.tech/tags/distributed.md>), [errcompacted](<https://devfeed.tech/tags/errcompacted.md>), [etcd](<https://devfeed.tech/tags/etcd.md>), [five-axes](<https://devfeed.tech/tags/five-axes.md>), [incident](<https://devfeed.tech/tags/incident.md>), [keepalive](<https://devfeed.tech/tags/keepalive.md>), [kubernetes](<https://devfeed.tech/tags/kubernetes.md>), [lag](<https://devfeed.tech/tags/lag.md>), [lease](<https://devfeed.tech/tags/lease.md>), [mvcc](<https://devfeed.tech/tags/mvcc.md>), [node-lease](<https://devfeed.tech/tags/node-lease.md>), [raft](<https://devfeed.tech/tags/raft.md>), [restore](<https://devfeed.tech/tags/restore.md>), [troubleshooting](<https://devfeed.tech/tags/troubleshooting.md>), [ttl](<https://devfeed.tech/tags/ttl.md>), [v3](<https://devfeed.tech/tags/v3.md>), [v3-5](<https://devfeed.tech/tags/v3-5.md>), [v3-5-33](<https://devfeed.tech/tags/v3-5-33.md>), [wal](<https://devfeed.tech/tags/wal.md>), [watch](<https://devfeed.tech/tags/watch.md>)

### AI overview

This troubleshooting article organizes etcd failures into five diagnostic axes: Raft consensus, WAL persistence and recovery, MVCC storage and capacity, Watch client synchronization, and Lease TTL semantics. It maps symptoms to axes, explains relevant etcdctl health and status fields, and notes Kubernetes control-plane relationships, including apiserver and Node Lease behavior. The article is anchored to etcd v3.5.33.

### Source excerpt

按 Raft、WAL、MVCC、Watch、Lease 五轴做症状否证；解释 etcdctl endpoint status/health 字段语义；并对照 K8s 控制面 apiserver 超时与 Node Lease 漂移。

## 【etcd】Kubernetes 控制面耦合：apiserver、resourceVersion 与 Node Lease

DevFeed: [【etcd】Kubernetes 控制面耦合：apiserver、resourceVersion 与 Node Lease](<https://devfeed.tech/articles/etcd-kubernetes-apiserver-resourceversion-node-lease-33995.md>)

Original publisher: [Read original article](<https://quant67.com/post/etcd/13-k8s-coupling/13-k8s-coupling.html>)

Author: Liao Tonglang

Published: 2026-08-26T00:00:00Z

Content type: tutorial

Language: zh

Sources: [土法炼钢 - 系统与基础设施](<https://devfeed.tech/sources/source-4.md>)

Topics: [etcd](<https://devfeed.tech/topics/etcd.md>), [Kubernetes](<https://devfeed.tech/topics/kubernetes.md>), [API](<https://devfeed.tech/topics/api.md>), [Cache](<https://devfeed.tech/topics/cache.md>)

Tags: [api](<https://devfeed.tech/tags/api.md>), [apiserver](<https://devfeed.tech/tags/apiserver.md>), [cache](<https://devfeed.tech/tags/cache.md>), [control-plane](<https://devfeed.tech/tags/control-plane.md>), [distributed](<https://devfeed.tech/tags/distributed.md>), [etcd](<https://devfeed.tech/tags/etcd.md>), [kubernetes](<https://devfeed.tech/tags/kubernetes.md>), [lease](<https://devfeed.tech/tags/lease.md>), [mvcc](<https://devfeed.tech/tags/mvcc.md>), [node-lease](<https://devfeed.tech/tags/node-lease.md>), [raft](<https://devfeed.tech/tags/raft.md>), [resourceversion](<https://devfeed.tech/tags/resourceversion.md>), [v3-5-33](<https://devfeed.tech/tags/v3-5-33.md>), [watch](<https://devfeed.tech/tags/watch.md>), [watch-cache](<https://devfeed.tech/tags/watch-cache.md>)

### AI overview

This article explains how Kubernetes control-plane components interact with etcd. It covers the kube-apiserver boundary, the mapping of resourceVersion to etcd mod revision, Node Lease storage, watch cache behavior, and how compaction, caching, and event sharding affect troubleshooting and etcd load.

### Source excerpt

钉 kube-apiserver 与 etcd 的分层边界；resourceVersion 如何映射 Revision MVCC；Node Lease 如何落在 Lease 轴；以及 apiserver 超时应如何分列到 Raft/Watch/Quota 五轴。

## 【etcd】Compaction、Defrag 与容量：quota、alarm 与 SLO

DevFeed: [【etcd】Compaction、Defrag 与容量：quota、alarm 与 SLO](<https://devfeed.tech/articles/etcd-compaction-defrag-quota-alarm-slo-33994.md>)

Original publisher: [Read original article](<https://quant67.com/post/etcd/12-compaction-quota/12-compaction-quota.html>)

Author: Liao Tonglang

Published: 2026-08-26T00:00:00Z

Content type: tutorial

Language: zh

Sources: [土法炼钢 - 系统与基础设施](<https://devfeed.tech/sources/source-4.md>)

Topics: [etcd](<https://devfeed.tech/topics/etcd.md>), [Raft](<https://devfeed.tech/topics/raft.md>), [Kubernetes](<https://devfeed.tech/topics/kubernetes.md>)

Tags: [alarm](<https://devfeed.tech/tags/alarm.md>), [bbolt](<https://devfeed.tech/tags/bbolt.md>), [benchmark](<https://devfeed.tech/tags/benchmark.md>), [compaction](<https://devfeed.tech/tags/compaction.md>), [defrag](<https://devfeed.tech/tags/defrag.md>), [distributed](<https://devfeed.tech/tags/distributed.md>), [errcompacted](<https://devfeed.tech/tags/errcompacted.md>), [etcd](<https://devfeed.tech/tags/etcd.md>), [follower](<https://devfeed.tech/tags/follower.md>), [kubernetes](<https://devfeed.tech/tags/kubernetes.md>), [lag](<https://devfeed.tech/tags/lag.md>), [leader](<https://devfeed.tech/tags/leader.md>), [mvcc](<https://devfeed.tech/tags/mvcc.md>), [nospace](<https://devfeed.tech/tags/nospace.md>), [performance](<https://devfeed.tech/tags/performance.md>), [quota](<https://devfeed.tech/tags/quota.md>), [raft](<https://devfeed.tech/tags/raft.md>), [resourceversion](<https://devfeed.tech/tags/resourceversion.md>), [v3](<https://devfeed.tech/tags/v3.md>), [v3-5](<https://devfeed.tech/tags/v3-5.md>), [v3-5-33](<https://devfeed.tech/tags/v3-5-33.md>), [watch](<https://devfeed.tech/tags/watch.md>)

### AI overview

This technical article explains how etcd v3.5.33 compaction, defragmentation, quota handling, and the NOSPACE alarm interact. It distinguishes revision-history removal from bbolt file reclamation, describes periodic and revision-based auto-compaction, and connects retention, quota, defrag pauses, and Watch or Kubernetes control-plane behavior to operational SLOs.

### Source excerpt

钉 etcd v3.5.33 MVCC compaction 与 bbolt defrag 的分工、auto-compaction 保留窗口、quota-backend-bytes 与 NOSPACE alarm 写入门，以及 ErrCompacted 如何写进 Watch SLO。

## 【分布式系统百科】etcd 深度解剖：从 Watch 机制到 MVCC 存储引擎

DevFeed: [【分布式系统百科】etcd 深度解剖：从 Watch 机制到 MVCC 存储引擎](<https://devfeed.tech/articles/etcd-watch-mvcc-33979.md>)

Original publisher: [Read original article](<https://quant67.com/post/distributed/50-etcd/etcd.html>)

Author: Liao Tonglang

Published: 2026-04-13T00:00:00Z

Content type: article

Language: zh

Sources: [土法炼钢 - 系统与基础设施](<https://devfeed.tech/sources/source-4.md>)

Topics: [etcd](<https://devfeed.tech/topics/etcd.md>), [Kubernetes](<https://devfeed.tech/topics/kubernetes.md>), [Raft](<https://devfeed.tech/topics/raft.md>)

Tags: [apiserver](<https://devfeed.tech/tags/apiserver.md>), [boltdb](<https://devfeed.tech/tags/boltdb.md>), [compaction](<https://devfeed.tech/tags/compaction.md>), [distributed](<https://devfeed.tech/tags/distributed.md>), [distributed-coordination](<https://devfeed.tech/tags/distributed-coordination.md>), [distributed-systems](<https://devfeed.tech/tags/distributed-systems.md>), [etcd](<https://devfeed.tech/tags/etcd.md>), [kubernetes](<https://devfeed.tech/tags/kubernetes.md>), [lease](<https://devfeed.tech/tags/lease.md>), [mvcc](<https://devfeed.tech/tags/mvcc.md>), [raft](<https://devfeed.tech/tags/raft.md>), [revision](<https://devfeed.tech/tags/revision.md>), [streaming](<https://devfeed.tech/tags/streaming.md>), [watch](<https://devfeed.tech/tags/watch.md>)

### AI overview

This article explains etcd's persistent Watch mechanism, revision-based event replay, MVCC storage, and its relationship with Raft and WAL. It also describes how Kubernetes components use etcd Watch events to propagate Deployment and Pod changes, and discusses compaction limits and recovery through full resynchronization.

### Source excerpt

深入剖析 etcd 的核心机制：持久化 Watch 与 Revision 追溯、Lease 租约机制、基于 BoltDB 的 MVCC 存储引擎、与 Raft 共识的联动方式，以及在 Kubernetes 中的关键角色。涵盖性能调优策略、容量限制与规模化方案。

## 【分布式系统百科】分布式 KV 存储对比：etcd、TiKV 与 FoundationDB

DevFeed: [【分布式系统百科】分布式 KV 存储对比：etcd、TiKV 与 FoundationDB](<https://devfeed.tech/articles/kv-etcd-tikv-foundationdb-33978.md>)

Original publisher: [Read original article](<https://quant67.com/post/distributed/39-kv-stores/kv-stores.html>)

Author: Liao Tonglang

Published: 2026-04-13T00:00:00Z

Content type: comparison

Language: zh

Sources: [土法炼钢 - 系统与基础设施](<https://devfeed.tech/sources/source-4.md>)

Topics: [etcd](<https://devfeed.tech/topics/etcd.md>), [Raft](<https://devfeed.tech/topics/raft.md>), [Kubernetes](<https://devfeed.tech/topics/kubernetes.md>)

Tags: [bbolt](<https://devfeed.tech/tags/bbolt.md>), [boltdb](<https://devfeed.tech/tags/boltdb.md>), [compaction](<https://devfeed.tech/tags/compaction.md>), [coreos](<https://devfeed.tech/tags/coreos.md>), [distributed](<https://devfeed.tech/tags/distributed.md>), [distributed-systems](<https://devfeed.tech/tags/distributed-systems.md>), [errcompacted](<https://devfeed.tech/tags/errcompacted.md>), [etcd](<https://devfeed.tech/tags/etcd.md>), [go](<https://devfeed.tech/tags/go.md>), [k8s](<https://devfeed.tech/tags/k8s.md>), [kubernetes](<https://devfeed.tech/tags/kubernetes.md>), [lease](<https://devfeed.tech/tags/lease.md>), [mmap](<https://devfeed.tech/tags/mmap.md>), [mvcc](<https://devfeed.tech/tags/mvcc.md>), [raft](<https://devfeed.tech/tags/raft.md>), [readindex](<https://devfeed.tech/tags/readindex.md>), [revision](<https://devfeed.tech/tags/revision.md>), [single-raft-group](<https://devfeed.tech/tags/single-raft-group.md>), [ssd](<https://devfeed.tech/tags/ssd.md>), [v3](<https://devfeed.tech/tags/v3.md>), [wal](<https://devfeed.tech/tags/wal.md>), [watch](<https://devfeed.tech/tags/watch.md>)

### AI overview

This Chinese-language comparison examines etcd, TiKV, and FoundationDB as distributed key-value stores for metadata. It focuses on architecture, implementation, performance, and limitations, with detailed coverage of etcd's single Raft group, MVCC, Watch, Lease, bbolt storage engine, linearizable reads, compaction, and defragmentation.

### Source excerpt

一个典型的架构评审场景：团队需要一个分布式键值存储来承载新系统的元数据。候选方案三个----etcd、TiKV、FoundationDB。三者都提供强一致性保证，都经过大规模生产验证，但设计目标截然不同。选错了，轻则性能不达标，重则数据丢失后无法恢复。这篇文章从架构、实现、性能和局限四个维度，把三个系统拆开来看。

## The WET Codebase

DevFeed: [The WET Codebase](<https://devfeed.tech/articles/the-wet-codebase-36201.md>)

Original publisher: [Read original article](<https://overreacted.io/the-wet-codebase/>)

Published: 2020-07-13T00:00:00Z

Content type: opinion

Language: en

Sources: [Dan Abramov](<https://devfeed.tech/sources/dan-abramov.md>)

Topics: [Code](<https://devfeed.tech/topics/code.md>), [Software](<https://devfeed.tech/topics/software.md>)

Tags: [code](<https://devfeed.tech/tags/code.md>), [software](<https://devfeed.tech/tags/software.md>), [talk](<https://devfeed.tech/tags/talk.md>), [watch](<https://devfeed.tech/tags/watch.md>)

### AI overview

A conference talk argues that strict adherence to eliminating code duplication can produce software that is difficult to understand. The article shares the talk, including its transcript, as a starting point for team discussion.

### Source excerpt

Come waste your time with me.

## Watch: Ember at 10 feet

DevFeed: [Watch: Ember at 10 feet](<https://devfeed.tech/articles/watch-ember-at-10-feet-40634.md>)

Original publisher: [Read original article](<https://eviltrout.com/blog/2014-12-22-watch-ember-tv/>)

Published: 2014-12-22T00:00:00Z

Content type: article

Language: en

Sources: [Robin Ward](<https://devfeed.tech/sources/robin-ward.md>)

Topics: [Ember](<https://devfeed.tech/topics/ember.md>)

Tags: [ember](<https://devfeed.tech/tags/ember.md>), [video](<https://devfeed.tech/tags/video.md>), [watch](<https://devfeed.tech/tags/watch.md>)

### AI overview

A video of the author's "Ember at 10 feet" talk from the Embergarten Saturday Symposium is available to watch. The post also links to source code and an online demo.

### Source excerpt

Previously I posted notes and links for my talk about "Ember at 10 feet" from the Embergarten Saturday Symposium. Today my awesome friends at Unspace posted a video of the talk, which you can watch below: Source Code | Online Demo