Jump to section

什么是 etcd?

复制 URL

2024 年全球技术趋势

在我们第十年发布的《2024 年全球技术趋势报告》中,红帽再次与大家分享我们的行业洞察,重点关注六个 IT 和非 IT 投资重点,以及阻碍进展的三大因素。

etcd(读作 et-see-dee)是一种开源的分布式统一键值存储,用于分布式系统或计算机集群的共享配置、服务发现和的调度协调。etcd 有助于促进更加安全的自动更新,协调向主机调度的工作,并帮助设置容器的覆盖网络。

etcd 是许多其他项目的核心组件。最值得注意的是,它是 Kubernetes 的首要数据存储,也是容器编排的实际标准系统。使用 etcd, 云原生应用可以保持更为一致的运行时间,而且在个别服务器发生故障时也能正常工作。应用从 etcd 读取数据并写入到其中;通过分散配置数据,为节点配置提供冗余和弹性。

作为 Kubernetes 的首要数据存储,etcd 存储和复制所有的 Kubernetes 集群状态。etcd 是 Kubernetes 集群的关键组件,因此必须要有一种可靠的方法来进行配置和管理。

etcd 属于基于共识的分布式系统,因此 etcd 的配置可能比较复杂。引导、维护仲裁、重新配置集群成员身份、创建备份、处理灾难恢复以及监控重要事件都是复杂、繁冗的任务,需要运用相关的专业技能。

使用 etcd Operator 可让这一切都能轻松实现。

通过使用 Operator(代表人类运维知识 ),使得 etcd 更容易在 Kubernetes 或 Kubernetes 容器平台(如红帽 OpenShift)上使用。etcd Operator 在 Operator 框架内管理 etcd,并用于简化 etcd 集群配置和管理。

etcd Operator 可通过一个简单的命令来安装,也允许用户使用简单的声明式配置来创建、配置和管理 etcd 集群,从而配置和管理 etcd 的复杂设置。

etcd Operator 提供以下功能:

  • 创建/部署 - 用户只需要指定集群大小,不必逐一为 etcd 成员指定繁杂的配置设置。
  • 调整大小 - 用户只需要在规格中指定大小,etcd Operator 便会负责部署、销毁和/或重新配置集群成员。
  • 备份 - etcd Operator 可以自动、透明地执行备份。用户只需要指定备份策略即可。例如,每隔 30 分钟备份一次,并保留最近的 3 个备份。
  • 升级 - 在不停机的情况下升级 etcd 是一项重要但又棘手的任务。通过 etcd Operator 执行升级,可以简化运维工作并避免常见的升级错误。

etcd Operator 通过 3 个步骤来模拟人类运维人员的行为:观察、分析和操作。

  1. Operator 通过使用 Kubernetes API 来观察当前的集群状态。
  2. 然后,查明预期状态和当前状态之间的差异。
  3. 最后,通过利用 etcd 集群管理 API 和/或 Kubernetes API 缩小这些差异。

etcd 由 CoreOS 团队在 2013 年创造,并由红帽工程师与业内同仁携手维护。

2018 年,红帽和 CoreOS 团队将 etcd 社区项目转交给云原生计算基金会(CNCF)负责,这是是 Linux 基金会旗下旨在推动云原生系统采用的供应商中立组织。etcd 旨在为每一个 Kubernetes 集群提供支持,因此这一举措把 etcd 带给了最依赖它的 CNCF 社区。

红帽计划继续参与开发 etcd,特别是将其作为我们企业级 Kubernetes 产品红帽 OpenShift 的一部分。红帽也是 2015 年成立 CNCF 时在幕后提供支持的首批公司之一,之后一直与相关基金会和社区携手开发和发展云原生技术。我们深厚的渊源以及对开源软件和社区推动型开发的专注,都有助于让 etcd 继续在 CNCF 管理下为社区造福。

继续阅读

文章

容器与虚拟机

Linux 容器和虚拟机(VM)都是封装型计算环境,里面组合了各种 IT 组件并独立于系统的其余部分。

文章

什么是容器编排?

容器编排是指自动化容器的部署、管理、扩展和联网。

文章

什么是 Linux 容器?

Linux 容器是与系统隔离开的一系列进程,它从单独的镜像运行,并由该镜像提供支持进程所需的全部文件。

详细了解容器

产品

企业级应用平台,包含一系列久经测试的服务,可在您选择的基础架构上将应用推向市场。

相关资源

培训

免费培训课程

"通过红帽来运行容器"技术概述

免费培训课程

容器、Kubernetes 和红帽 OpenShift 技术概述

免费培训课程

利用微服务架构开发云原生应用