etcd
분산 시스템의 가장 중요한 데이터를 위한 신뢰할 수 있는 분산 키-값 저장소
etcd는 분산 시스템 또는 시스템 클러스터에서 액세스해야 하는 데이터를 안정적으로 저장하는 방법을 제공하는 강력하고 일관된 분산 키-값 저장소입니다. 네트워크 파티션 중에 리더 선택을 정상적으로 처리하고 리더 노드에서도 시스템 오류를 허용할 수 있습니다.
Simple interface
Read and write values using standard HTTP tools, such as curl
Key-value storage
Store data in hierarchically organized directories, as in a standard filesystem
Watch for changes
Watch specific keys or directories for changes and react to changes in values
For details, see Install.
설치
binary 파일로 설치하는 방법과 source를 build하는방법 그리고 패키지로 설치하는 3가지 방법이 있다. 여기서는 binary 파일로 설치하는 방법과 패키지로 설치하는 방법을 설명한다.
1) install binaries
- 파일 다운로드 : Releases
- 압축해제
tar -xf etcd-v3.5.0-linux-amd64.tar
- 환경설정
경로 추가 : 기존 PATH 에 압축해제한 경로추가 또는 압축해제한 파일을 /usr/local/bin 으로 이동
(예제 : mv etcd etcdctl etcdutl /usr/local/bin, 단 /usr/local 에 사용권한이 있어야 함)
- 설치확인
$ etcd --version
etcd Version: 3.5.0
Git SHA: 946a5a6f2
Go Version: go1.16.3
Go OS/Arch: linux/amd64
2) 패키지 설치 :
패키지 설치 version
- etcd server 설치 : etcd
sudo apt install etcd-server
- etcd client 설치 : etcdctl
sudo apt install etcd-client
- 설치확인
$ etcd --version
etcd Version: 3.2.26
Git SHA: Not provided (use ./build instead of go build)
Go Version: go1.13.8
Go OS/Arch: linux/amd64
시작하기
- etcd 실행: foreground 로 etcd가 실행된다. 백그라운드로 실행하려면 etcd & 명령어로 수행한다.
Note: 화면에 나오는 내용은 log 내용임
$ etcd
{"level":"info","ts":"2021-09-17T09:19:32.783-0400","caller":"etcdmain/etcd.go:72","msg":... }
⋮
- 다른 터미털에서 etcdctl 명령어로 key-value를 입력
$ etcdctl put greeting "Hello, etcd"
OK
- key에 대한 value값을 조회
$ etcdctl get greeting
greeting
Hello, etcd
etcd 툴
etcd manager 라는 UI 관리 툴로 관리 할 수 있다. 아래 사이트에서 다운로드 하고 설치한다.