etcd-io/etcd
분산 시스템의 핵심 데이터를 위한 신뢰할 수 있는 키-값 저장소 etcd
원제 etcd-io/etcd
스타 52,485당일 +123Go
Key Point
Kubernetes와 수천 개의 분산 시스템을 지탱하는 핵심 인프라 소프트웨어의 설계와 운영 방식을 이해해야 하는 개발자라면 필수.
핵심 요약
- etcd는 분산 시스템의 가장 중요한 데이터를 저장하기 위한 분산형 신뢰할 수 있는 키-값 저장소이며, 단순성·보안·속도·안정성에 중점을 두고 설계됐다.
- Go로 작성됐으며 Raft 합의 알고리즘을 사용해 고가용성 복제 로그를 관리한다.
- gRPC 기반 API를 제공하고, 자동 TLS와 선택적 클라이언트 인증서 인증을 지원하며, 초당 10,000회 쓰기 성능을 벤치마크했다.
- Kubernetes, locksmith, vulcand, Doorman 등 많은 애플리케이션과 함께 사용되며 많은 기업에서 프로덕션 환경에서 운영하고 있다.
- 클라이언트 통신은 포트 2379, 서버 간 통신은 포트 2380을 사용한다.
- 단일 멤버 클러스터부터 시작할 수 있으며, 사전 빌드된 바이너리로 macOS, Linux, Windows, Docker에서 실행 가능하다.
- 로컬 etcd 클러스터는 goreman을 이용해 Procfile로 관리할 수 있고, 학습자 노드를 추가할 수 있다.
- Go, Python, Node.js 등 여러 언어에 대한 클라이언트 바인딩이 제공되며, TLS 보안, 클러스터 튜닝, 다중 머신 클러스터 구성 가이드가 있다.
- 주간 커뮤니티 미팅(목요일 11:00 AM 미국 태평양 시간)과 이슈 트리아주 미팅이 열리며, 모든 기여자가 참여할 수 있다.
- Apache 2.0 라이선스 하에 배포되며 엄격한 견고성 테스트를 통해 신뢰성을 보장한다.
저장소 보기 ↗github.com