etcd
Initial releaseJanuary 28, 2015; 10 years ago (2015-01-28)[1]
Stable release
3.6.6[2] Edit this on Wikidata / 12 November 2025; 48 days ago (12 November 2025)
Repository
Written inGo
Service nameetcd
TypeKey–value database
LicenseApache License 2.0
Websiteetcd.io Edit this on Wikidata

etcd is a key-value database commonly deployed with distributed systems.[3] The software is used by Kubernetes.[4] It is written in the Go programming language and published under the Apache License 2.0.

History

[edit]

etcd was originally developed as part of the CoreOS project, it was first announced in June of 2013.[5] It was later donated the project to the Cloud Native Computing Foundation (CNCF).[6] It became a CNCF incubating project in December 2018, and graduated in November of 2020.[4][7] At the time, the maintainer team consisted of 10 members, including: Amazon, Google Cloud, IBM, Alibaba, and Red Hat.[7] As of 2018, all 32 of the CFNFs Kubernetes compliant distributions and platforms used etcd as their datastore.[5]

According to a 2024 report by the CNCF, the project had over 3300 contributers and at least 450 contributing companies.[8]

The first stable version of etcd, v2.0.0, was released on January 28, 2015.[1][5] v3.0.0 was released on June 30, 2016.[9]

Name

[edit]

The name "etcd" is derived from the Unix convention of storing system configuration files in the /etc directory, which applies to a single system, etcd stores configurations for a distributed system, hence the appended "d" standing for "distributed".[10][11]

Architecture

[edit]

The software consists of three executables:[6]

  • etcd
  • etcdctl
  • etcdutl

On particular database entries, locks can be set to prevent writing by other entities while it is being used.[6] It uses the raft consensus algorithm.[7][4]

Etcd was initially inspired by Chubby, a distributed lock manager developed Google in 2006, as well as Apache ZooKeeper.[12][13][14][15]

Features

[edit]

It supports TLS/SSL encryption, exposes a client-facing gRPC API,[7] and supports multiversion concurrency control,[16] and runtime cluster membership reconfiguration.[16][17]

The official IANA assigned ports for etcd are TCP 2379/2380.[1][18]

Users

[edit]

Etcd is used to store cluster data by default for most Kubernetes implementations,[5][4] like AWS EKS.[19] One notable exception being Google Kubernetes Engine, whose control-plane datastore was migrated from etcd to a Spanner-based store in 2024, while preserving etcd compatibility.[20]

Kubernetes also depends on the etcd API to communicate with its datastore, meaning that all storage backends used by it are required to support the etcd API.[20][21]

See also

[edit]

References

[edit]
  1. ^ a b c "etcd 2.0 Release - First Major Stable Release". CoreOS. 28 Jan 2015. Archived from the original on 4 Mar 2016. Retrieved 2 December 2025.
  2. ^ "Release 3.6.6". 12 November 2025. Retrieved 13 November 2025.
  3. ^ Dobies, Jason; Wood, Joshua. Kubernetes Operators. O'Reilly Media.
  4. ^ a b c d "etcd gets ready to graduate | AWS Open Source Blog". AWS Blog. 17 November 2020. Retrieved 2 December 2025.
  5. ^ a b c d Lee, Gyuho; Betz, Joe (11 December 2018). "etcd: Current status and future roadmap". Kubernetes. Retrieved 2 December 2025.
  6. ^ a b c Burns, Brendan (2024). Designing distributed systems: patterns and paradigms for scalable, reliable services, using Kubernetes (Second ed.). Sebastopol: O'Reilly. ISBN 978-1-0981-5635-0.
  7. ^ a b c d "Cloud Native Computing Foundation Announces etcd Graduation". CNCF. 24 November 2020. Retrieved 2 December 2025.
  8. ^ "etcd Project Journey Report". CNCF. 25 September 2024. Retrieved 3 December 2025.
  9. ^ "Release v3.0.0 · etcd-io/etcd". GitHub. Jun 30, 2016. Retrieved 3 December 2025.
  10. ^ "What Is etcd?". IBM. 1 October 2021. Retrieved 3 December 2025.
  11. ^ "etcd versus other key-value stores". etcd. Retrieved 3 December 2025.
  12. ^ "Google Research Publication: Chubby Distributed Lock Service". research.google.com. Retrieved 2 December 2025.
  13. ^ "etcd: the Not-so-Secret Sauce in Google's Kubernetes and Pivotal's Cloud Foundry". datacenterknowledge. 16 Jul 2014. Retrieved 2 December 2025.
  14. ^ "Distributed Key-Value Store etcd Graduates at CNCF". InfoQ. 29 Nov 2020. Retrieved 2 December 2025.
  15. ^ "Kubernetes Podcast from Google: Episode 95 - etcd, with Xiang Li". kubernetespodcast.com. 17 Mar 2020. Retrieved 2 December 2025.
  16. ^ a b "CNCF to host etcd". CNCF. 11 December 2018. Retrieved 3 December 2025.
  17. ^ "Runtime reconfiguration". etcd. Retrieved 3 December 2025.
  18. ^ "Service Name and Transport Protocol Port Number Registry". IANA. Retrieved 3 December 2025.
  19. ^ "Explore etcd Defragmentation in Amazon EKS | Containers". AWS Blogs. 25 September 2023. Retrieved 3 December 2025.
  20. ^ a b "Google Kubernetes Engine supports 65,000-node clusters". Google Cloud Blog. 14 Nov 2024. Retrieved 3 December 2025.
  21. ^ "How etcd works with and without Kubernetes". LearnKube. Retrieved 3 December 2025.
[edit]