0、开篇词、为什么你要学习etcd你好,我是唐聪,etcd活跃贡献者,腾讯资深工程师,欢迎你和我一起学习etcd。 开门见山,今天我想和你聊聊为什么要学习etcd。随着Kubernetes成为容器编排领域霸主,etcd也越来越火热,越来越多的软件工程师使用etcd去解决各类业务场景中...2026-01-03ETCD实战课
1、etcd的前世今生:为什么Kubernetes使用etcd你好,我是唐聪。 今天是专栏课程的第一讲,我们就从etcd的前世今生讲起。让我们一起穿越回2013年,看看etcd最初是在什么业务场景下被设计出来的? 2013年,有一个叫CoreOS的创业团队,他们构建了一个产品,Container Linux,它...2026-01-03ETCD实战课
2、基础架构:etcd一个读请求是如何执行的你好,我是唐聪。 在上一讲中,我和你分享了etcd的前世今生,同时也为你重点介绍了etcd v2的不足之处,以及我们现在广泛使用etcd v3的原因。 今天,我想跟你介绍一下etcd v3的基础架构,让你从整体上对etcd有一个初步的了解,心中能构筑...2026-01-03ETCD实战课
3、基础架构:etcd一个写请求是如何执行的你好,我是唐聪。 在上一节课里,我通过分析etcd的一个读请求执行流程,给你介绍了etcd的基础架构,让你初步了解了在etcd的读请求流程中,各个模块是如何紧密协作,执行查询语句,返回数据给client。 那么etcd一个写请求执行流程又是怎样的呢?...2026-01-03ETCD实战课
4、Raft协议:etcd如何实现高可用、数据强一致的你好,我是唐聪。 在前面的etcd读写流程学习中,我和你多次提到了etcd是基于Raft协议实现高可用、数据强一致性的。 那么etcd是如何基于Raft来实现高可用、数据强一致性的呢? 这节课我们就以上一节中的hello写请求为案例,深入分析etcd...2026-01-03ETCD实战课
5、鉴权:如何保护你的数据安全你好,我是唐聪。 不知道你有没有过这样的困惑,当你使用etcd存储业务敏感数据、多租户共享使用同etcd集群的时候,应该如何防止匿名用户访问你的etcd数据呢?多租户场景又如何最小化用户权限分配,防止越权访问的? etcd鉴权模块就是为了解决以上痛点...2026-01-03ETCD实战课
6、租约:如何检测你的客户端存活你好,我是唐聪。 今天我要跟你分享的主题是租约(Lease)。etcd的一个典型的应用场景是Leader选举,那么etcd为什么可以用来实现Leader选举?核心特性实现原理又是怎样的? 今天我就和你聊聊Leader选举背后技术点之一的Lease, ...2026-01-03ETCD实战课
7、MVCC:如何实现多版本并发控制你好,我是唐聪。 在[01]课里,我和你介绍etcd v2时,提到过它存在的若干局限,如仅保留最新版本key-value数据、丢弃历史版本。而etcd核心特性watch又依赖历史版本,因此etcd v2为了缓解这个问题,会在内存中维护一个较短的全局事...2026-01-03ETCD实战课
8、Watch:如何高效获取数据变化通知你好,我是唐聪。 在Kubernetes中,各种各样的控制器实现了Deployment、StatefulSet、Job等功能强大的Workload。控制器的核心思想是监听、比较资源实际状态与期望状态是否一致,若不一致则进行协调工作,使其最终一致。 那...2026-01-03ETCD实战课
9、事务:如何安全地实现多key操作你好,我是唐聪。 在软件开发过程中,我们经常会遇到需要批量执行多个key操作的业务场景,比如转账案例中,Alice给Bob转账100元,Alice账号减少100,Bob账号增加100,这涉及到多个key的原子更新。 无论发生任何故障,我们应用层期望的...2026-01-03ETCD实战课