주키퍼(zookeeper) 설치 가이드 – 멀티 서버 구성

주키퍼를 멀티서버로 설치하여 실행해보자.

주키퍼는 정족수를 기준으로 동작하므로, 멀티서버로 구성된 정상적으로 동작중인 주키퍼의 서버 수가 [환경 설정 파일에 등록된 서버 대수 + 1] / 2보다 작으면 동작하지 않는다. 따라서 일반적으로 주키퍼는 3대로 구성하며, 2대 이상이 다운되어야만 서비스가 중지된다.

먼저 각 서버에 주키퍼 설치파일을 다운로드 한 후, 적당한 위치에 압축을 푼다.

그리고 ${ZOOKEPER_HOME}/conf 디렉토리에 환경 설정파일인 zoo.cfg 파일을 아래와 같이 생성한다.

dataDir은 주키퍼가 관리할 데이터를 저장할 디렉토리다. 당연히 주키퍼를 실행한 사용자가 해당 디렉토리에 접근권한이 있어야 한다.

server.#에는 멀티서버로 구성할 서버를 등록한다. 여기에서는 총 3대를 등록한다. 첫번째 포트(2888)는 주키퍼 클러스터의 리더에 접속하기 위한 포트이며, 두번째 포트(3888)는 리더를 선출하는데 사용한다.

이제 각 서버에서 주키퍼를 실행한다.

주키퍼는 관리를 위한 웹 UI는 따로 제공하지 않으며, 정상적으로 실행되었는지는 로그를 통해 확인할 수 있다. 리더로 선출된 서버는 아래와 같이 LEADING 메시지가 출력된다.

그리고 리더가 아닌 서버는 아래와 같이 FOLLOWING 메시지가 출력된다.

 

Leave a Reply

Your email address will not be published. Required fields are marked *