IT 이야기/default

zookeeper(주키퍼)

Kjun25 2018. 9. 30. 22:28
반응형

Zookeeper란?

분산 클러스터를 관리해주는 코디네이터 역할(Kafka Server 조율)

특징

시스템에서 반드시 홀수로 구성 해야 한다.

서버 5대가 구동 중에 2대가 죽었을 때, 관리자가 죽었던 서버를 다시 살리고 데이터 변경 요청이 들어올 경우, 데이터 일관성을 위해서 과반수 투표를 하게 된다.


올바른 데이터가 무엇인지 판단하기 위해서 3:2로 비교하고 과반수인 3쪽의 서버의 데이터를 업데이트하게 된다.
하지만 짝수일 경우에는 2:2또는 1:1로 과반수 라는 게 없이 똑같아져서 문제가 발생한다.


반대로 3대가 죽었을 경우, 투표를 하게 되면 죽은 서버가 과반수가 되어 올바르지 않은 데이터를 옳다고 판단하게 된다.
그래서 절반 이상이 죽으면 데이터의 불일치성을 막기 위해서 zookeeper가 Kafka 서버를 중단하게 된다.

반응형