etcd实战课
唐聪
腾讯云资深工程师,etcd活跃贡献者
立即订阅
2213 人已学习
课程目录
已更新 20 讲 / 共 27 讲
0/3登录后,你可以任选3讲全文学习。
开篇词 (1讲)
开篇词|为什么你要学习etcd?
免费
基础篇 (11讲)
01 | etcd的前世今生:为什么Kubernetes使用etcd?
02 | 基础架构:etcd一个读请求是如何执行的?
03 | 基础架构:etcd一个写请求是如何执行的?
04 | Raft协议:etcd如何实现高可用、数据强一致的?
05 | 鉴权:如何保护你的数据安全?
06 | 租约:如何检测你的客户端存活?
07 | MVCC:如何实现多版本并发控制?
08 | Watch:如何高效获取数据变化通知?
09 | 事务:如何安全地实现多key操作?
10 | boltdb:如何持久化存储你的key-value数据?
11 | 压缩:如何回收旧版本数据?
实践篇 (8讲)
12 | 一致性:为什么基于Raft实现的etcd还会出现数据不一致?
13 | db大小:为什么etcd社区建议db大小不超过8G?
14 | 延时:为什么你的etcd请求会出现超时?
15 | 内存:为什么你的etcd内存占用那么高?
16 | 性能及稳定性(上):如何优化及扩展etcd性能?
17 | 性能及稳定性(下):如何优化及扩展etcd性能?
18 | 实战:如何基于Raft从0到1构建一个支持多存储引擎分布式KV服务?
19 | Kubernetes基础应用:创建一个Pod背后etcd发生了什么?
etcd实战课
15
15
1.0x
00:00/00:00
登录|注册

19 | Kubernetes基础应用:创建一个Pod背后etcd发生了什么?

唐聪 2021-03-03
你好,我是唐聪。
今天我将通过在 Kubernetes 集群中创建一个 Pod 的案例,为你分析 etcd 在其中发挥的作用,带你深入了解 Kubernetes 是如何使用 etcd 的。
希望通过本节课,帮助你从 etcd 的角度更深入理解 Kubernetes,让你知道在 Kubernetes 集群中每一步操作的背后,etcd 会发生什么。更进一步,当你在 Kubernetes 集群中遇到 etcd 相关错误的时候,能从 etcd 角度理解错误含义,高效进行故障诊断。

Kubernetes 基础架构

在带你详细了解 etcd 在 Kubernetes 里的应用之前,我先和你简单介绍下 Kubernetes 集群的整体架构,帮你搞清楚 etcd 在 Kubernetes 集群中扮演的角色与作用。
下图是 Kubernetes 集群的架构图(引用自 Kubernetes 官方文档),从图中你可以看到,它由 Master 节点和 Node 节点组成。
控制面 Master 节点主要包含以下组件:
kube-apiserver,负责对外提供集群各类资源的增删改查及 Watch 接口,它是 Kubernetes 集群中各组件数据交互和通信的枢纽。kube-apiserver 在设计上可水平扩展,高可用 Kubernetes 集群中一般多副本部署。当收到一个创建 Pod 写请求时,它的基本流程是对请求进行认证、限速、授权、准入机制等检查后,写入到 etcd 即可。
kube-scheduler 是调度器组件,负责集群 Pod 的调度。基本原理是通过监听 kube-apiserver 获取待调度的 Pod,然后基于一系列筛选和评优算法,为 Pod 分配最佳的 Node 节点。
kube-controller-manager 包含一系列的控制器组件,比如 Deployment、StatefulSet 等控制器。控制器的核心思想是监听、比较资源实际状态与期望状态是否一致,若不一致则进行协调工作使其最终一致。
etcd 组件,Kubernetes 的元数据存储。
确认放弃笔记?
放弃后所记笔记将不保留。
新功能上线,你的历史笔记已初始化为私密笔记,是否一键批量公开?
批量公开的笔记不会为你同步至部落
公开
同步至部落
取消
完成
0/1000字
划线
笔记
复制
© 版权归极客邦科技所有,未经许可不得传播售卖。 页面已增加防盗追踪,如有侵权极客邦将依法追究其法律责任。
该试读文章来自付费专栏《etcd实战课》,如需阅读全部文章,
请订阅文章所属专栏
立即订阅
登录 后留言

精选留言(2)

  • 唐聪
    kubernetes中创建一个pod工作流程,resource version含义与etcd,通过label/fieldSelecotor查询性能,是比较常见的面试题。
    2021-03-03
    3
  • Simon
    思考题:

    请求的版本在etcd已经回收了是不是就报"too old Resource Version"?
    2021-03-03
收起评论
2
返回
顶部