Version 3.3.12 home Download and build Libraries and tools Branch management Demo Discovery service protocol Frequently Asked Questions (FAQ) Logging conventions Metrics Production users Reporting bugs Tuning etcd release guide Benchmarks Benchmarking etcd v2.1.0 Benchmarking etcd v2.2.0 Benchmarking etcd v2.2.0-rc Benchmarking etcd v2.2.0-rc-memory Benchmarking etcd v3 Storage Memory Usage Benchmark Watch Memory Usage Benchmark Developer guide Experimental APIs and features Interacting with etcd Set up a local cluster System limits Why gRPC gateway etcd API Reference etcd concurrency API Reference gRPC naming and discovery Learning etcd client architecture Client feature matrix Data model Glossary KV API guarantees Learner etcd v3 authentication design etcd versus other key-value stores etcd3 API Operations guide Clustering Guide Configuration flags Design of runtime reconfiguration Disaster recovery Failure modes Hardware recommendations Maintenance Migrate applications from using API v2 to API v3 Monitoring etcd Performance Role-based access control Run etcd clusters inside containers Runtime reconfiguration Supported systems Transport security model Versioning etcd gateway gRPC proxy Platforms Amazon Web Services Container Linux with systemd FreeBSD Upgrading Upgrade etcd from 2.3 to 3.0 Upgrade etcd from 3.0 to 3.1 Upgrade etcd from 3.1 to 3.2 Upgrade etcd from 3.2 to 3.3 Upgrade etcd from 3.3 to 3.4 Upgrade etcd from 3.4 to 3.5 Upgrading etcd clusters and applications etcd v3 API

Libraries and tools

v3.3.12

latest

Tools

  • etcdctl - A command line client for etcd
  • etcd-backup - A powerful command line utility for dumping/restoring etcd - Supports v2
  • etcd-dump - Command line utility for dumping/restoring etcd.
  • etcd-fs - FUSE filesystem for etcd
  • etcddir - Realtime sync etcd and local directory. Work with windows and linux.
  • etcd-browser - A web-based key/value editor for etcd using AngularJS
  • etcd-lock - Master election & distributed r/w lock implementation using etcd - Supports v2
  • etcd-console - A web-base key/value editor for etcd using PHP
  • etcd-viewer - An etcd key-value store editor/viewer written in Java
  • etcdtool - Export/Import/Edit etcd directory as JSON/YAML/TOML and Validate directory using JSON schema
  • etcd-rest - Create generic REST API in Go using etcd as a backend with validation using JSON schema
  • etcdsh - A command line client with support of command history and tab completion. Supports v2
  • etcdloadtest - A command line load test client for etcd version 3.0 and above.
  • lucas - A web-based key-value viewer for kubernetes etcd3.0+ cluster.

Go libraries

  • etcd/clientv3 - the officially maintained Go client for v3
  • etcd/client - the officially maintained Go client for v2
  • go-etcd - the deprecated official client. May be useful for older (<2.0.0) versions of etcd.
  • encWrapper - encWrapper is an encryption wrapper for the etcd client Keys API/KV.

Java libraries

Scala libraries

Perl libraries

Python libraries

Node libraries

Ruby libraries

C libraries

C++ libraries - edwardcapriolo/etcdcpp - Supports v2 - suryanathan/etcdcpp - Supports v2 (with waits) - nokia/etcd-cpp-api - Supports v2 - nokia/etcd-cpp-apiv3 - Supports v3

Clojure libraries

Erlang libraries

.Net Libraries

PHP Libraries

Haskell libraries

R libraries

Nim libraries

Tcl libraries

Rust libraries

Gradle Plugins

Chef Integration

Chef Cookbook

BOSH Releases

Projects using etcd

  • etcd Raft users - projects using etcd’s raft library implementation.
  • apache/celix - an implementation of the OSGi specification adapted to C and C++
  • binocarlos/yoda - etcd + ZeroMQ
  • blox/blox - a collection of open source projects for container management and orchestration with AWS ECS
  • calavera/active-proxy - HTTP Proxy configured with etcd
  • chain/chain - software designed to operate and connect to highly scalable permissioned blockchain networks
  • derekchiang/etcdplus - A set of distributed synchronization primitives built upon etcd
  • go-discover - service discovery in Go
  • gleicon/goreman - Branch of the Go Foreman clone with etcd support
  • garethr/hiera-etcd - Puppet hiera backend using etcd
  • mattn/etcd-vim - SET and GET keys from inside vim
  • mattn/etcdenv - “env” shebang with etcd integration
  • kelseyhightower/confd - Manage local app config files using templates and data from etcd
  • configdb - A REST relational abstraction on top of arbitrary database backends, aimed at storing configs and inventories.
  • kubernetes/kubernetes - Container cluster manager introduced by Google.
  • mailgun/vulcand - HTTP proxy that uses etcd as a configuration backend.
  • duedil-ltd/discodns - Simple DNS nameserver using etcd as a database for names and records.
  • skynetservices/skydns - RFC compliant DNS server
  • xordataexchange/crypt - Securely store values in etcd using GPG encryption
  • spf13/viper - Go configuration library, reads values from ENV, pflags, files, and etcd with optional encryption
  • lytics/metafora - Go distributed task library
  • ryandoyle/nss-etcd - A GNU libc NSS module for resolving names from etcd.
  • Gru - Orchestration made easy with Go
  • Vitess - Vitess is a database clustering system for horizontal scaling of MySQL.
  • lclarkmichalek/etcdhcp - DHCP server that uses etcd for persistence and coordination.
  • openstack/networking-vpp - A networking driver that programs the FD.io VPP dataplane to provide OpenStack cloud virtual networking
  • OpenStack - OpenStack services can rely on etcd as a base service.
  • CoreDNS - CoreDNS is a DNS server that chains plugins, part of CNCF and Kubernetes
  • Uber M3 - M3: Uber’s Open Source, Large-scale Metrics Platform for Prometheus
  • Rook - Storage Orchestration for Kubernetes
  • Patroni - A template for PostgreSQL High Availability with ZooKeeper, etcd, or Consul
  • Trillian - Trillian implements a Merkle tree whose contents are served from a data storage layer, to allow scalability to extremely large trees.