本章讲解知识点
-
- etcd 概述
-
- Raft 原理简介
-
- etcd 其他应用场景
etcd 不算 Kubernetes 自研组件,etcd 自身是一个开源组件,Kubernetes 集成了它而已。但我们还是有必要讲讲 etcd。
1. etcd 概述
1.1 概述
etcd 是一个高可用的分布式键值存储系统,被用来存储 Kubernetes 集群中的所有配置数据和状态信息。etcd 具有高可用、强一致性和快速响应等特性,可以保证 Kubernetes 集群的数据可靠性和一致性。
1.2 etcd 特点
- 键值对存储:将数据存储在分层组织的目录中,如同在标准文件系统中
- 监测变更:监测特定的键或目录以进行更改,并对值的更改做出反应
- 简单:curl 可访问的用户的 API (HTTP + JSON)
- 安全:可选的 SSL 客户端证书认证
- 快速:单实例每秒 1000 次写操作,2000+ 次读操作
- 可靠:基于 Raft 共识算法,实现分布式系统内部数据存储、服务调用的一致性和高可用性
1.3 etcd 主要功能
- 基本的 key-value 存储
- 监听