
Etcd
文章平均质量分 70
Etcd学习与实战
alden_ygq
一枚北漂7年多的资深SRE菜鸟,专注SRE方向,专注于运维体系建设。个人宣言:先努力成就自己,再用知识成就他人。
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
etcd网关
如果在同一台服务器上的多个应用访问同一个 etcd 集群,每个应用都需要知道 etcd 集群的公告的客户端终端。如果 etcd 集群被重新配置为使用不同的终端,每个应用都需要更新它的终端列表。如果网关检测到终端失败,它将切换到其他的终端,如果可用,从而给它的客户端隐藏失败。典型 etcd 网关配置是在每台机器上运行网关监听在本地地址,而每个 etcd 应用连接到它本地的网关。网关是无状态和透明的;总的来说,为了自动扩散集群终端变化,etcd 网关运行在每台机器,服务于访问同一个 etcd 集群的多个应用。原创 2024-12-18 20:22:15 · 722 阅读 · 0 评论 -
etcd 性能测试
【代码】etcd 性能测试。原创 2024-12-18 19:17:08 · 161 阅读 · 0 评论 -
etcd性能调优
而且,进行中的压缩可以影响 etcd 的性能。阿里进行了深入研究了 etcd 内部的实现原理,并发现了影响 etcd 扩展性的一个关键问题在底层 bbolt db 的 page 页面分配算法上:随着 etcd 中存储的数据量的增长,bbolt db 中线性查找 “连续长度为 n 的 page 存储页面” 的性能显著下降。etcd 集群对磁盘 I/O 的延时非常敏感,因为 Etcd 必须持久化它的日志,当其他 I/O 密集型的进程也在占用磁盘 I/O 的带宽时,就会导致 fsync 时延非常高。原创 2024-12-16 23:26:13 · 974 阅读 · 0 评论 -
etcd选举源码解析
在上面我们知道,每个 Follower 都有一颗不甘的心,有个定时器在不断计数,超过阈值就想要去竞争 Leader ,这个也是系统自驱力的一部分。假设有集群有三个节点,A,B,C 各自 tick ,谁都有可能先超时,先到 pastElectionTimeout 这个条件,因为这个每个节点。发送 MsgVote 的消息给集群的其他节点,等请求响应回来之后就唱票,得到大多数人的支持(没明确拒绝),那么就成为 Leader 角色。这个才是配合的关键。在集群新节点扩容的时候,会引发集群可用性问题。原创 2024-12-16 22:57:56 · 1100 阅读 · 0 评论 -
etcd集群节点异常处理
etcd-3启动etcd。假设etcd3出现了异常。原创 2024-12-16 20:57:10 · 348 阅读 · 0 评论 -
etcd leader选举详解
raft 是针对paxos的简化版本,拆解为三个核心问题Leader 选举;日志复制;正确性的保证;本文不对 raft算法做详细的证明和阐述,仅阐述基础的知识点在 raft 集群中,对外的服务只由 Leader 这个角色来提供;集群只会有一个有效 Leader,换句话说,有效的入口只有一个,就算是发给 Follower 的,最后也是会转发 Leader 处理;日志数据是单向传输的,只由 Leader 分发给 Follower,learner 等角色;原创 2024-12-16 20:52:38 · 811 阅读 · 0 评论 -
etcd中配置参数详解
1、etcd成员相关的配置项--name 'default':为该成员指定一个易读的名称。 --data-dir '${name}.etcd':数据存储目录的路径。 --wal-dir ' ':用于存放专用WAL(Write-Ahead Log)的目录路径。 --snapshot-count '100000':触发快照到磁盘的已提交事务数量。 --heartbeat-interval '100':心跳间隔时间(毫秒)。 --election-timeout '1000' :选举超时时间(毫秒)原创 2024-12-15 22:27:21 · 872 阅读 · 0 评论 -
etcd常用监控
通过部署etcd-exporter+Prometheus,然后配置etcd相关告警可以及时发现etcd集群风险。原创 2024-12-15 21:51:09 · 412 阅读 · 0 评论 -
etcd常见运维操作
【代码】etcd常见运维事件。原创 2024-12-15 21:19:40 · 428 阅读 · 0 评论 -
etcd集群常见日志
当etcd集群中的节点因为网络问题被分割成两个或多个分区,且其中一个分区没有包含多数节点时,这个分区中的leader会失去其领导地位,因为无法获得足够多的节点来达成共识。节点 9afce9447872453 成为了一个预候选者(pre-candidate),这是选举过程的第一步,节点会请求其他节点的预投票。:etcd集群中的leader节点如果发生故障,比如服务器崩溃或软件故障,那么集群会检测到该故障并开始新的leader选举。:在添加或移除集群成员时,如果操作不当,可能会导致leader失去其地位。原创 2024-12-15 21:06:36 · 530 阅读 · 0 评论 -
etcd数据迁移
场景1 更换高性能盘停掉etcd服务 高性能盘上创建新的数据目录 copy旧数据文件到新数据目录中 修改配置文件的数据目录为新目录,然后重启服务场景2 更换高性能物理机器,不停服切换新的机器需要先安装好etcd服务 先启动安装好的一台etcd,单独起来,然后查看etcd的member的ID 到原有的三台etcd集群上,将第二部步中起来的etcd添加到集群(添加节点需要用到etcd的member ID 和peer-urls地址) 将原来三台的etcd的ETCD_INITIAL_CLUST原创 2024-12-15 16:50:24 · 703 阅读 · 0 评论 -
etcd详解
通常一个用户的请求发送过来,会经由 HTTP Server 转发给 Store 进行具体的事务处理,如果涉及到节点数据的修改,则交给 Raft 模块进行状态的变更、日志的记录,然后再同步给别的 etcd 节点以确认数据提交,最后进行数据的提交,再次同步。etcd v3 版本依然保留etcd v2的协议和api,同时提供一套v3的API,也就是说,两个版本共享一套raft协议代码的,在于api不同,存储不同,数据相互隔离,采用v2版本API 只能用v2版本的API,v3版本只能用v3 版本的API。原创 2024-12-15 16:37:27 · 1451 阅读 · 0 评论 -
etcd节点扩/缩容
部署新节点配置需要包含集群节点信息。3、修改所有etcd配置并重启。1、新增节点部署etcd。原创 2024-12-14 21:34:32 · 554 阅读 · 0 评论 -
etcd命令大全
【代码】etcd增删改查。原创 2024-12-14 19:45:01 · 1014 阅读 · 0 评论 -
etcd安装部署方式
命令行工具验证 etcd 服务是否正常工作。下载对应版本的etcdctl二进制文件。访问etcd的GitHub发布页面(,表示 etcd 服务运行正常。将下载的文件移动到你的。原创 2024-10-18 21:10:58 · 1131 阅读 · 0 评论 -
k8s集群中etcd详解
k8s中所有对象的manifest都需要保存到某个地方,这样他们的manifest在api server重启和失败的时候才不会丢失,因此引入了etcd。在k8s中只有api server和etcd直接交互,其它组件都通过api server间接和etcd交互,这样做的好处如下。etcd是一个响应快、分布式、一致的KV存储,也是k8s存储集群状态和元数据的唯一地方。原创 2023-12-12 23:49:30 · 841 阅读 · 0 评论