etcd runs on different platforms, but the guarantees it provides depends on a platform’s support tier:
- Tier 1: fully supported by etcd maintainers; etcd is guaranteed to pass all tests including functional and stress tests.
- Tier 2: etcd is guaranteed to pass integration and end-to-end tests but not necessarily functional or stress tests.
- Tier 3: etcd is guaranteed to build, may be lightly tested (or not), and so it should be considered unstable.
The following table lists currently supported platforms and their corresponding etcd support tier:
|Architecture||Operating system||Support tier||Maintainers|
Unlisted platforms are unsupported.
Supporting a new platform
Want to contribute to etcd as the “official” maintainer of a new platform? In addition to committing to support the platform, you must setup etcd continuous integration (CI) satisfying the following requirements, depending on the support tier:
|etcd continuous integration||Tier 1||Tier 2||Tier 3|
|Unit tests pass||✓||✓|
|Integration and end-to-end tests pass||✓||✓|
|Functional and stress tests pass||✓|
For an example of setting up tier-2 CI for ARM64, see etcd PR #12928.
To avoid inadvertently running an etcd server on an unsupported platform, etcd
prints a warning message and exits immediately unless the environment variable
ETCD_UNSUPPORTED_ARCH is set to the target architecture.
32-bit systemsetcd has known issues on 32-bit systems due to a bug in the Go runtime. For more information see the Go issue #599 and the atomic package bug note.
Was this page helpful?
Glad to hear it! Please tell us how we can improve.
Sorry to hear that. Please tell us how we can improve.