BigData/etc
Zookeeper 개념 및 구성
Sh.TK
2017. 6. 24. 16:33
주키퍼
소개: 서버간의 정보를 안전하게 공유하기 위한 코디네이터 시스템(분산 코디네이터)
공식 홈페이지: http://zookeeper.apache.org
주요 구성 요소:
1. Client: 주키퍼 ZNode에 담긴 데이터의 쓰기, 읽기 삭제 등의 작업을 요청하는 클라이언트
2. ZNode: 파일시스템의 디렉터리 개념으로, 클라이언트의 요청정보를 계층적으로 관리
3. Ensemble: 3대 이상의 주키퍼 서버를 하나의 클러스터로 구성한 HA 아키텍쳐
A. HA 아키텍쳐: 지리분할형 아키텍쳐로 Active-Stanby로 구성된 서버(참조: http://nyebo.net/2015/10/it-infra-architecture/)
i. FailOver: 소프트웨어 재시작을 자동으로 하는 구조
4. Leader Server: Ensemble 안에는 유일한 리더 서버가 선출되어 존재, 클라이언트는 리더로 해당 요청을 전달, 리더 서버는 모든 팔로워 서버로 클라이언트 요청을 전달
5. Follower Server: 리더 서버를 제외한 모든 서버, 리더 서버와 데이터를 주고 받으며, ZNode 데이터를 동기화, 리더 서버에 문제가 발생하는 경우, 내부적으로 새로운 리더 선출하는 역할