Apache Zookeeper 는 클러스터 전체에서 동기화를 가능하게 하는 분산 애플리케이션용 조정 서비스이다. 따라서 Hadoop의 경우 ZooKeeper가 Hadoop 노드 간의 조정을 도와준다.
노드 전체에서 구성을 관리한다.
수십 또는 수백 개의 노드가 있는 경우 노드 간에 구성 동기화를 유지하고 신속하게 변경하기가 어려워진다. 이때 ZooKeeper를 사용하면 구성 변경을 신속하게 할 수 있다.
신뢰할 수 있는 메시징을 구현한다.
ZooKeeper를 사용하면 일부 소비자 또는 ZooKeeper 서버 중 하나가 실패하더라도 전달을 보장하는 생산자/소비자 대기열을 쉽게 구현할 수 있다.
중복 서비스를 구현힌다.
ZooKeeper를 사용하면 동일한 노드 그룹(예: 데이터베이스 서버)이 리더/마스터를 선출하고 ZooKeeper가 모든 클라이언트를 해당 마스터 서버로 참조하도록 할 수 있다. 마스터가 실패하면 ZooKeeper는 새 리더를 할당하고 모든 클라이언트에 알린다.
프로세스 실행을 동기화한다.
ZooKeeper를 사용하면 여러 노드가 프로세스 또는 계산의 시작과 끝을 조정할 수 있다. 이렇게 하면 모든 노드가 계산을 마친 후에만 후속 처리가 완료된다.
Lazy Execution?