2026-08-28 | kubernetes · distributed | #kubernetes #apiserver #resourceversion #etcd #revision #pagination #consistency #410-gone #v1.30.3
钉 Kubernetes resourceVersion 字段与 etcd mod revision 的对应关系;分析 continue token 的分页语义与成本;说明不同 List 路径的一致性期望差异;以及 410 Gone 与 ErrCompacted 的分列。版本锚定 Kubernetes v1.30.3 / etcd v3.5.33。
2026-08-28 | kubernetes · distributed | #kubernetes #apiserver #ha #operations #upgrade #graceful-shutdown #etcd #encryption #v1.30.3
kube-apiserver 高可用模式:多实例共享 etcd、无需内部 leader election;核心 flag 语义(--etcd-servers、--etcd-servers-overrides、--shutdown-delay-duration、encryption-provider-config);与 etcd/14 的联合升级检查单;Kubernetes 版本偏差策略与 etcd 矩阵指针。
2026-08-28 | kubernetes · distributed | #kubernetes #apiserver #selection #open-questions #kine #events #exclusion-tree #watch-cache #etcd #v1.30.3
用机制排除树收束何时查 apiserver 轴、何时穿透 etcd 轴、何时两轴联查;回收 etcd/13 写下的 apiserver 停损线;Kine SQL backend 的 Watch 语义差与 Jepsen 覆盖空白;events --etcd-servers-overrides 分集群运维;列出 watch cache SLO 联合模型、线性读期望与 Lease+fencing 全链路三个开放问题;以 ADR 语言关闭系列边界。
2026-04-13 | distributed | #etcd #mvcc #boltdb #watch #lease #raft #kubernetes #distributed-coordination #distributed-systems
深入剖析 etcd 的核心机制:持久化 Watch 与 Revision 追溯、Lease 租约机制、基于 BoltDB 的 MVCC 存储引擎、与 Raft 共识的联动方式,以及在 Kubernetes 中的关键角色。涵盖性能调优策略、容量限制与规模化方案。
2026-08-26 | distributed · kubernetes | #etcd #kubernetes #apiserver #resourceversion #node-lease #watch #mvcc #control-plane #v3.5.33
钉 kube-apiserver 与 etcd 的分层边界;resourceVersion 如何映射 Revision MVCC;Node Lease 如何落在 Lease 轴;以及 apiserver 超时应如何分列到 Raft/Watch/Quota 五轴。
2026-08-26 | distributed · kubernetes | #etcd #selection #open-questions #tikv #foundationdb #zookeeper #k8s #exclusion-tree #v3.5.33
用机制排除树收束何时该留 etcd、何时迁 TiKV/FDB/ZK;回收 distributed/39、tikv-htap/18、foundationdb/18 的 etcd 叶;列出 Watch 背压、Lease+fencing、quota 迁移等开放问题;以 ADR 语言关闭续作边界。
2026-08-26 | distributed · kubernetes | #etcd #raft #wal #mvcc #bbolt #watch #lease #kubernetes #control-plane #v3.5
补齐 distributed 百科单篇之上的 etcd 生产内核:单 Raft 组、WAL/快照、Revision MVCC、bbolt 单写者、Watch/Lease、K8s apiserver 耦合,并以排障与相对 TiKV/FoundationDB 的选型收束。
2025-01-24 | distributed | #raft #etcd #consensus #distributed-systems #leader-election #log-replication
Raft 论文 18 页,etcd raft 库 ~15000 行 Go。中间的差距不是代码量,是论文没提的工程 edge case:PreVote、流水线复制、ReadIndex、joint consensus。
2026-08-26 | distributed · kubernetes | #etcd #raft #wal #mvcc #watch #lease #kubernetes #control-plane #overview #v3.5.33
相对 distributed/50、39、13 钉清 etcd 生产内核缺口;定义 Raft/WAL/MVCC/Watch/Lease 五轴排障坐标系,给出 16 篇阅读路线与 K8s 控制面耦合指针。版本锚定 v3.5.33。
2026-08-26 | distributed · kubernetes | #etcd #raft #leader #follower #learner #etcdserver #single-raft-group #v3.5.33
钉清 etcd v3.5.33 单 Raft 组拓扑、EtcdServer 与 go.etcd.io/raft/v3 边界、Leader/Follower/Learner 角色及 gRPC 写读路由;与 distributed/13 分工。
2026-08-26 | distributed · kubernetes | #etcd #wal #snapshot #crash-recovery #committed-index #applied-index #persistence #v3.5.33
拆解 etcd v3.5.33 的 WAL 段文件、Raft snapshot 触发与重启 recovery 顺序;钉清 committed index 与 applied index 分叉对排障与 K8s 控制面的含义。
2026-08-26 | distributed · kubernetes | #etcd #mvcc #revision #keyindex #generation #treeindex #v3 #v3.5.33
拆解 etcd v3.5.33 的 Revision (main, sub) 全序、keyIndex/generation 生命周期与 treeIndex 分工;简要对照 v2 平面键空间,交代 MVCC 与 Watch/compaction 的语义基础。
2026-08-26 | distributed · kubernetes | #etcd #bbolt #mmap #batch #mvcc #backend #v3.5
钉清 etcd v3.5.33 的 bbolt 后端:bucket 布局、mmap 预映射、100ms/10000 条 batch commit、ConcurrentReadTx 与单写者如何约束 MVCC 读写并发。
2026-08-26 | distributed · kubernetes | #etcd #apply #treeIndex #mvcc #watch #raft #v3.5
走读 etcd v3.5.33 从 Raft commit 到 MVCC apply 的串行管道:treeIndex 与 bbolt 分工、consistent index、watchableStore 通知触发点,以及 committed/applied 分列排障。
2026-08-26 | distributed · kubernetes | #etcd #txn #mod-revision #quota #alarm #nospace #v3.5
走读 etcd v3.5.33 写入路径:raftRequest 背压、Txn compare/mod 与 ModRevision 分配、backend quota 与 NOSPACE alarm 如何把集群推入只读。
2026-08-26 | distributed · kubernetes | #etcd #readindex #linearizable #serializable #lease #consistency #v3.5
分列 etcd v3.5.33 三种读语义:默认线性一致读的 ReadIndex 循环、Serializable 本地读、Raft ReadOnlyLeaseBased 与不经 Raft 的 Lease 路径;follower 读风险与 K8s 期望。
2026-08-26 | distributed · kubernetes | #etcd #watch #watchableStore #mvcc #ErrCompacted #v3.5.33
钉 etcd v3.5.33 watchableStore 的 synced/unsynced/victims 三分法、Apply 后 notify 与历史追赶 syncWatchersLoop,以及 CompactRevision 触发 ErrCompacted 时的客户端重同步边界。
2026-08-26 | distributed · kubernetes | #etcd #lease #KeepAlive #checkpoint #TTL #lessor #v3.5.33
钉 etcd v3.5.33 lessor 的 primary/demote/promote、KeepAlive 不经 Raft 的 Renew 路径、LeaseCheckpoint 与 Promote 时 TTL 展期,以及 Leader 切换对 Node Lease 的排障落格。
2026-08-26 | distributed · kubernetes | #etcd #txn #compare #mvcc #jepsen #concurrency #v3.5.33
钉 etcd v3.5.33 Txn 的 compareToPath、MOD/CREATE/VERSION 比较与写 Txn 的 Raft 单槽 apply,并对照 Jepsen 3.4.3 的 strict-serializable 与 Lease 锁不安全子集。
2026-08-26 | distributed · kubernetes | #etcd #compaction #defrag #quota #alarm #mvcc #bbolt #v3.5.33
钉 etcd v3.5.33 MVCC compaction 与 bbolt defrag 的分工、auto-compaction 保留窗口、quota-backend-bytes 与 NOSPACE alarm 写入门,以及 ErrCompacted 如何写进 Watch SLO。
2026-08-26 | distributed · kubernetes | #etcd #operations #upgrade #member-change #backup #restore #learner #v3.5.33 #v3.6 #v3.7
member add/remove/replace 与 learner promote 检查单;snapshot backup/restore 及 K8s 语境 revision bump;3.5.33 补丁线与 3.6/3.7 官方升级门禁项,不超前写未钉 tag 能力。
2026-08-26 | distributed · kubernetes | #etcd #troubleshooting #raft #wal #mvcc #watch #lease #five-axes #v3.5.33
按 Raft、WAL、MVCC、Watch、Lease 五轴做症状否证;解释 etcdctl endpoint status/health 字段语义;并对照 K8s 控制面 apiserver 超时与 Node Lease 漂移。
2026-04-13 | distributed | #raft #consensus #etcd #tikv #paxos #distributed-systems #leader-election #log-replication #prevote #multi-raft
Raft 论文 18 页就能读完,但 etcd/raft 用了 15000 行 Go 才把它变成能在生产环境跑的代码。这篇文章从论文的每一个核心机制出发,逐一拆解工程实现中论文没说的东西:PreVote、ReadIndex、LeaderTransfer、ConfChange V2、流水线复制、Async Apply,以及 TiKV 的 Multi-Raft 实践。最后做一次精确的 Paxos 对比,并坦诚讨论 Raft 的已知缺陷。
2026-07-17 | database · storage | #foundationdb #tikv #etcd #engine-selection #strict-serializability #reading-map
用一致性级别、事务模型与 Layer 边界收束 FoundationDB / TiKV / etcd 选型;给出站内阅读地图、全系列学术谱系与开放问题,标志 FoundationDB 内核系列完成。
2026-07-16 | database · storage | #tikv #multi-raft #raft #etcd #raftstore #cross-region-transaction #consensus
拆解 TiKV 的 Multi-Raft 架构:为什么每个 Region 是独立的 Raft 组,与 etcd 单 Raft 组对照差在哪;跨 Region 事务代价作为开放问题收束,不重写 Raft 协议本身。
2026-07-16 | database · storage | #tikv #etcd #foundationdb #rocksdb #lakehouse #cdc #engine-selection #htap #reading-map
给出分布式强一致 KV 的扩展决策树:数据规模、事务需求、新鲜度要求如何在 TiKV、etcd、FoundationDB、单机 RocksDB、湖仓+CDC 之间做选型;回链全系列 18 篇,收束学术谱系与开放问题,标志系列完成。
2026-04-13 | architecture | #config-management #12-factor #Apollo #Nacos #etcd #dynamic-config
配置应该放在代码里、环境变量里、还是配置中心里?本文从 12-Factor App 的配置理念出发,拆解配置的分层模型,深入分析 Apollo、Nacos、etcd 三大配置中心的架构与取舍,讨论动态配置灰度发布、配置加密与审计、Feature Flags 等工程实践。
2026-04-13 | architecture | #Kubernetes #k8s #apiserver #etcd #controller #operator #CRD
2014 年 6 月,Google 将其内部容器编排系统 Borg 的设计思想提炼并开源,发布了 Kubernetes(简称 K8s)项目。Borg 在 Google 内部运行了超过十年,管理着数百万个容器实例,支撑了搜索、Gmail、YouTube 等核心服务。根据 Google 2015 年发表的论文《Large-…
2026-04-13 | distributed | #distributed-lock #redlock #fencing-token #etcd #zookeeper #redis #concurrency-control #distributed-systems
完整还原 Kleppmann 与 Antirez 关于 Redlock 的技术争论,拆解 Fencing Token 方案的原理与实现,对比基于 etcd 和 ZooKeeper 的分布式锁正确实现,讨论锁粒度、Advisory Lock 与 Mandatory Lock 的区别,以及用版本号代替锁的替代思路。