The distributed key-value database powering every single Kubernetes cluster in the world has joined Kubernetes in being an open source project managed by the Cloud Native Computing Foundation (CNCF).
Under the CNCF, etcd will get true vendor-neutral freedom, as well as funds to take on additional enhancements such as security and maturity audits, noted etcd co-creator Brandon Philips, who is a Red Hat technical staff, and former chief technology officer of CoreOS, which Red Hat acquired earlier this year.
CoreOS first released etcd in 2013, under an Apache open source license, to help in that company’s overall goal of enabling resilience and automatic updates with no downtime to critical infrastructure components. Written in Go, etcd was based on Google’s specifications for Chubby, which that company created to manage its own internal infrastructure. Using the Raft consensus algorithm, Etcd is a distributed database, ensuring that the data will remain consistent even if a node goes down.
Two years later after etcd’s launch, the Google engineers who created the Kubernetes open source container orchestration software picked etcd as the data store of choice to cluster information, making it an essential component of the emerging architecture of cloud native operations. Google donated Kubernetes to the then-new founded CNCF, along with seed money for the organization in 2015, and finalized the separation in August.
Battle-hardened through Kubernetes deployments worldwide, etcd is currently at version 3.3. There have been 157 releases, and nearly 15,000 commits, since its launch, with core contributions from more than 466 individuals, including those from all the major cloud providers such as Amazon Web Services, Google and Alibaba.
Beyond Kubernetes, etcd is finding other uses as well, Philips noted. Uber is using the software to store large-scale metrics of configuration data collected by Prometheus. The Google Chrome team uses the software to track and manage certificates from various certificate authorities. YouTube’s Vitess, also a CNCF project, uses the software to track multiple shards of MySQL instances.
In these cases, users want to “scale-out their computer infrastructure, but there still is some critical bit of information that needs to be centrally hosted. They don’t want to put their systems to be at risk when one machine goes down, so that’s why you don’t use MySQL or Redis to hold on to that data,” Philips said.
The Linux Foundation, parent of the CNCF, will manage the and its trademark usage guidelines, and the domains and accounts will be stewarded by CNCF.
The core development group are already working on future enhancements to etcd, including the ability to downgrade to an earlier version. This is a feature few databases currently offer, Philips noted, and useful for when a bug is found in a deployment of a newly-upgraded version. Additional tooling will also be created to install a version of etcd specifically for Kubernetes deployments. Red Hat itself will continue to work on etcd enhancements as well, Philips, such as the etcd Operator to aid in installation.
The Cloud Native Computing Foundation, Kubecon + CloudNativeCon, The Linux Foundation and Red Hat are sponsors of The New Stack.
Feature image: Red Hat’s Brandon Philips.