Coding With Fun
Home Docker Django Node.js Articles Python pip guide FAQ Policy

About Docker's etcd


May 22, 2021 Docker From entry to practice


Table of contents


What is etcd

About Docker's etcd

Etcd is an open source project launched by the CoreOS team in June 2013 with the goal of building a highly available distributed key-value database based on the Go language. W e know that in distributed systems, the management and sharing of configuration information for various services is a fundamental and important issue. The CoreOS project wants to solve this problem based on etcd.

etcd is currently github.com/coreos/etcd and is about to release version 2.0.0.

Inspired by the Apache ZooKeeper project and the doozer project, etcd was designed with the following four elements in consideration:

  • Simple: REST-style HTTP-JSON API is supported
  • Security: HTTPS-style access is supported
  • Fast: Supports 1k/s writes
  • Reliable: Supports distributed structures and Raft-based consistency algorithms

Note: Apache ZooKeyer is a well-known distributed system for synchronization and consistency management tools. se. /b10>Note: Raft is an algorithm that enables distributed system consistency by electing the main node, and its process is easier to understand than the well-known Paxos algorithm, proposed by Diego Ongaro and John Ousterhout of Stanford University. More details can be raftconsensus.github.io.

In general, users can use etcd to launch multiple instances on multiple nodes and add them as a cluster. Etcd instances in the same cluster will maintain consistency of information with each other.