1. 支持平台
1.1. 当前支持
下面的表单列出了常见架构和系统的 etcd 支持状态:
架构 | 操作系统 | 状态 | 维护者 |
---|---|---|---|
amd64 | Darwin | 实现性 | etcd maintainers |
amd64 | Linux | 稳定 | etcd maintainers |
amd64 | Windows | 实现性 | |
arm64 | Linux | 实现性 | @glevand |
arm | Linux | 不稳定 | |
386 | Linux | 不稳定 |
- etcd-维护者被列举在 https://github.com/coreos/etcd/blob/master/MAINTAINERS.
试验性的平台似乎在不断练习中工作,并在 etcd 中有一些平台特有代码,而没有完全遵守稳定支持策略。不稳定平台有轻度测试,那是比试验性少。为列出的架构和操作系统当前不支持,请当心!
1.1.1. 支持新平台
对于 etcd 官方支持新的稳定平台,有一些要求是必须的,以保证可接受的质量:
- 一个这个平台的 "官方" 的维护者,有清晰的动力;必须有人负责照看这个平台。
- 搭建构建的CI; etcd 必须编译
- 搭建用于运行单元测试的CI;etcd 必须通过简单的测试。
- 搭建CI (TravisCI, SemaphoreCI 或 Jenkins) 用于运行集成测试;etcd必须通过加强测试。
- (可选) 搭建功能测试集群; etcd 集群应该能通过压力测试。
1.1.2. 32-位 和其他未支持系统
由于go runtime 的 bug,etcd 在32位系统上有众所周知的问题。阅读 Go issue 和 atomic package 来获取详细信息。
为了避免不经意的运行可能不稳定的 etcd 服务器, 在不稳定或者未支持架构上的 etcd
将打印警告信息并立即退出,如果环境变量 ETCD_UNSUPPORTED_ARCH
没有设置为目标架构。
当前仅有 amd64 架构被 etcd
官方支持。