반응형
일단 어떤 솔루션이든 클러스터 구성을 위해선, 적어도 3대의 장비를 필요로 한다.
1. 설치
- Java 설치 (+환경변수) : 생략
- Zookeeper 설치
# download wget http://apache.mirror.cdnetworks.com/zookeeper/zookeeper-3.4.10/zookeeper-3.4.10.tar.gz # 압축해제 tar -zxvf zookeeper-3.4.10.tar.gz # 심볼릭 링크 설정 (선택) ln -s zookeeper-3.4.10 zookeeper
설치하고 나면, conf 폴더에 zoo_sample.cfg 파일이 있는데, 복사하여 zoo.cfg파일을 만든 후 내용을 아래와 같이 편집한다.
# zoo.cfg # The number of milliseconds of each tick tickTime=2000 # The number of ticks that the initial # synchronization phase can take initLimit=10 # The number of ticks that can pass between # sending a request and getting an acknowledgement syncLimit=5 # the directory where the snapshot is stored. # do not use /tmp for storage, /tmp here is just # example sakes. dataDir=/tmp/zookeeper # the port at which the clients will connect clientPort=2181 # for cluster server.1=0.0.0.0:2888:3888 server.2=머신2의 ip:2888:3888 server.3=머신3의 ip:2888:3888
for cluster 주석 아래 부분에 server목록을 지정해주는데, server.{id} 형태로 지정하게 된다.
id 부분에 입력된 숫자를 dataDir에 myid 파일을 생성하여 아래와 같이 입력해주어야 한다.
$ echo 1 >> /tmp/zookeeper/myid
server.1의 경우 ip가 0.0.0.0인데, 해당 하는 노드가 localhost에 위치해 있는 경우, 예외상황 발생을 막기 위해 0.0.0.0으로 지정해주는 것을 권장한다고 하니, 자기 자신은 0.0.0.0으로 지정해준다.
이제 Zookeeper 서버를 띄워본다.
$ bin/zkServer.sh start
서버를 띄운 후 설정 값에 문제가 있는 경우, Cannot open channel to x at election address 와 같은 에러를 로그에서 확인할 수 있는데, 이런 경우는 myid 값이 제대로 들어가지 않았거나, 존재하지 않는 경우 발생하니 다시 한번 체크해보면 된다.
반응형