- Pronounced
et-cee-dee
- Persistent KV store
- Uses Raft protocol to maintain data consistency
- Developed in Go
- Popular Use case: Kubernetes, Consul
Installation (OSX)
- Step 1
$ ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)" < /dev/null 2> /dev/null
- Step 2
$ brew install etcd
- Step 3
$ which etcd /usr/local/bin/etcd
Start Server and Make Requests
- Step 4
$ /usr/local/bin/etcd [WARNING] Deprecated '--logger=capnslog' flag is set; use '--logger=zap' flag instead 2020-03-23 01:11:59.084231 I | etcdmain: etcd Version: 3.4.4 2020-03-23 01:11:59.084520 I | etcdmain: Git SHA: Not provided (use ./build instead of go build) 2020-03-23 01:11:59.084527 I | etcdmain: Go Version: go1.13.8 2020-03-23 01:11:59.084529 I | etcdmain: Go OS/Arch: darwin/amd64
- Step 5
$ etcdctl put mykey "this is a test" OK $ etcdctl get mykey mykey this is a test
Reference
- https://rancher.com/blog/2019/2019-01-29-what-is-etcd/
- https://github.com/etcd-io/etcd
- https://www.compose.com/articles/essentially-etcd-part-2-coordination/
Written with StackEdit.