컨트롤러 컨트롤러 역시 카프카 브로커 중 하나이며 일반 브로커의 기능에 더하여 파티션 리더를 선출하는 책임을 갖는다. 컨트롤러 선출 과정 카프카 클러스터가 실행되면 모든 브로커들은 최상위 노드에 /controller 임시 노드를 생성하려고 한다. 이 때 가장 먼저 실행된 브로커가 임시 노드를 생성하고 컨트롤러가 되며 나머지 브로커들은 ‘노드가 이미 존재한다’는 예외를 받고 이미 /controller 임시 노드가 있다는 것과 클러스터에 컨트롤러가 있다는 것을 알게 된다. 이후에 모든 브로커들은 /controller 노드에 주키퍼의 watch를 생성하여 controller 노드에 변화가 생기면 바로 알 수 있도록 한다. 컨트롤러 재선출 컨트롤러 브로커가 중단되거나 연결이 끊기면 임시 노드였던 /control..