4.3. etcd 概述
etcd 是一个一致的、分布式键值存储,它包含较小的数据,可以完全包括在内存中。虽然 etcd 是许多项目的核心组件,但它是 Kubernetes 的主要数据存储,但这是容器编配的标准系统。
4.3.1. 使用 etcd 的好处
通过使用 etcd,您可以以多种方式获益:
- 保持云原生应用程序的一致性运行时间,并在单个服务器失败的情况下保持工作
- 为 Kubernetes 存储和复制所有集群状态
- 分发配置数据,以便为配置节点提供冗余和弹性
4.3.2. etcd 的工作原理
为确保集群配置和管理的可靠方法,etcd 使用 etcd Operator。Operator 简化了在 Kubernetes 容器平台(如 Red Hat OpenShift Service on AWS)上使用 etcd。使用 etcd Operator,您可以创建和删除 etcd 成员、重新定义集群大小、执行备份和升级 etcd。
etcd Operator 会观察、分析和操作:
- 它使用 Kubernetes API 观察集群状态。
- 它分析了当前状态和您希望的状态之间的区别。
- 它通过 etcd 集群管理 API,Kubernetes API 或两者解决了两者的不同。
etcd 会维持集群状态,它会持续更新。这个状态会被持续保留,这会导致高频率的、大量的小更改。因此,Red Hat Site Reliability Engineering (SRE)使用快速、低延迟 I/O 支持 etcd 集群成员。