初识etcd

etcd是一个高可用的分布式键值存储系统,由CoreOS开发,使用Go语言编写。它以简单、安全和快速为特点,采用Raft算法确保一致性。etcd的架构包括HTTP Server、Store、Raft和WAL(预写式日志)。在异常处理中,etcd通过心跳检测和重选举保证服务稳定。数据存储通过WAL和snapshot相结合的方式,实现高效且可靠的持久化。etcd与ZK相比,提供了HTTP+JSON接口,更便于跨平台使用,并支持HTTPS访问。
摘要由CSDN通过智能技术生成


最近学习Kubernetes的时候经常遇到etcd这个组件,它是用于存储K8S的集群信息的,感觉和zookeeper功能有点相似的,于是自己去查了查这个东西。

1. 什么是ETCD?

A distributed, reliable key-value store for the most critical data of a distributed system,这个是官网上的第一句话,即:用于配置共享和服务发现的键值存储系统。说白了就是个高可用的分布式k-v存储系统。由CoreOS开发并维护的并用go语言编写的。

2. ETCD有哪些特点?

简单:基于HTTP+JSON的API让你用curl命令就可以轻松使用。
安全:可选SSL客户认证机制。
快速:每个实例每秒支持一千次写操作。
可信:使用Raft算法充分实现了分布式。

3. ETCD的架构

 ETCD组成结构图
HTTP Server:用于处理用户发送的API请求以及其它etcd节点的同步与心跳信息请求。

Store:用于处理etcd支持的各类功能的事务,包括数据索引、节点状态变更、监控与反馈、事件处理与执行等等,是etcd对用户提供的大多数API功能的具体实现。

Raft:Raft强一致性算法的具体实现,是etcd的核心。

W

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值