etcd

Takami Torao etc 3.3 #etcd
  • このエントリーをはてなブックマークに追加

概要

etcd (etc distributed) は Raft に基づいた分散トランザクションを実装した分散 Key-Value ストア。コンテナ仮想化に特化した軽量 Linux ディストリビューションである CoreOS においてコンテナ間で設定を共有するために実装されたが、移植性の高い golang で実装されているため現在では様々な OS に移植されている。

etcd cluster
Fig 1. etcd クラスタ

etcd はローカルの KVS を管理し別のノードとの同期を行う。etcdctl を使って etcd にアクセスする。

セットアップ

OS X からは brew でインストールすることができる。

$ brew install etcd
==> Downloading https://homebrew.bintray.com/bottles/etcd-3.3.12.mojave.bottle.tar.gz
Already downloaded: /Users/torao/Library/Caches/Homebrew/downloads/22504bc6b786c38671e0b2f049f25d1d899d02b52ef86c1d933d3ded20da4a66--etcd-3.3.12.mojave.bottle.tar.gz
==> Pouring etcd-3.3.12.mojave.bottle.tar.gz
==> Caveats
To have launchd start etcd now and restart at login:
  brew services start etcd
Or, if you don't want/need a background service you can just run:
  etcd
==> Summary
🍺  /usr/local/Cellar/etcd/3.3.12: 9 files, 51.6MB
$ etcd --version
etcd Version: 3.3.12
Git SHA: GitNotFound
Go Version: go1.11.5
Go OS/Arch: darwin/amd64

Java クライアント

etcd クラスタには etcdctl 相当の公式 Java クライアントを使って接続することもできる。