Supported platforms
Support tiers
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.
Current support
The following table lists currently supported platforms and their corresponding etcd support tier:
Architecture | Operating system | Support tier | Maintainers |
---|---|---|---|
AMD64 | Linux | 1 | etcd maintainers |
ARM64 | Linux | 2 | @gyuho, @glevand |
AMD64 | Darwin | 3 | |
AMD64 | Windows | 3 | |
ARM | Linux | 3 | |
386 | Linux | 3 | |
ppc64le | Linux | 3 | @mkumatag |
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 |
---|---|---|---|
Build passes | ✓ | ✓ | ✓ |
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.
Unsupported platforms
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 systems
etcd 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.Feedback
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.