[Zookeeper] 설치 동일 장비에 멀티 인스턴스

1. 주키퍼 다운로드 
- 아래 주소를 참조하자.
http://uncle-bae.blogspot.com/2016/02/zookeeper-standalone.html

2. 멀티 인스턴스를 위한 디렉토리 생성 
> mkdir -p /usr/unclebae/server1
> mkdir -p /usr/unclebae/server2
> mkdir -p /usr/unclebae/server3

3. 각 디렉토리에서 다운받은 주키퍼 tar를 복사한다. 
> cp zookeeperXXX.jar /usr/unclebae/server1
> cp zookeeperXXX.jar /usr/unclebae/server2
> cp zookeeperXXX.jar /usr/unclebae/server3

4. 주키퍼 압축 풀기 
> cd /usr/unclebae/server1
> tar -xvf zookeeperXXX.jar

5. 주키퍼를 위한 데이터 디렉토리 생성 및 클러스터 이름 설정 
> mkdir -p /usr/unclebae/server1/datas
> mkdir -p /usr/unclebae/server2/datas
> mkdir -p /usr/unclebae/server3/datas

> vim /usr/unclebae/server1/datas/myid
파일이 열리면 다음 정보를 입력한다.
나머지 2번, 3번 서버도 동일하게 작업한다.
2번서버는 2, 3번서버는 3으로 설정한다.

1

6. 주키퍼 설정 파일을 생성한다.
각각 디렉토리의 conf/zoo.cfg를 생성하여 다음 내용을 입력한다.
>vim /usr/unclebae/server1/zookeeper/conf/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=/Users/naver/Documents/00.TOOLS/solr_cluster/server1/datas/zookeeper
dataLogDir=/Users/naver/Documents/00.TOOLS/solr_cluster/server1/datas/zookeeper/logs
# the port at which the clients will connect
clientPort=2181
# the maximum number of client connections.
# increase this if you need to handle more clients
#maxClientCnxns=60
#
# Be sure to read the maintenance section of the
# administrator guide before turning on autopurge.
#
# http://zookeeper.apache.org/doc/current/zookeeperAdmin.html#sc_maintenance
#
# The number of snapshots to retain in dataDir
#autopurge.snapRetainCount=3
# Purge task interval in hours
# Set to "0" to disable auto purge feature
#autopurge.purgeInterval=1
server.1=localhost:2888:3888
server.2=localhost:2889:3889
server.3=localhost:2890:3890

server1과 server2, server3은 clientPort를 다음과 같이 다르게 지정해야한다.
clientPort=2181
clientPort=2182
clientPort=2183

클라이언트 클러스터링은 server.1, server.2, server.3 으로 myid에 지정한 1, 2, 3이 들어오게 한다.


7. 클러스터 테스트하기. 
bin/zkCli.sh -server localhost:2181 로 1번 서버에 접속한다.
[zk: localhost:2181(CONNECTED) 0] ls /
[zookeeper]
znode를 생성한다.

[zk: localhost:2181(CONNECTED) 2] create /test-node test
Created /test-node
노드 확인하기.

[zk: localhost:2181(CONNECTED) 3] ls /
[test-node, zookeeper]

2번서버에도 zookeeper클라이언트로 접속하기.
bin/zkCli.sh -server localhost:2182로 서버에 접근한다.

[zk: localhost:2182(CONNECTED) 3] ls /
[test-node, zookeeper]

2번 서버에서도 1번서버에 생성한 test-node가 보인다. (즉, 복제가 된 것이다. )

주키퍼가 정상으로 설치 되었음을 확인한다.


주키퍼는 뭐하는놈일까?
주키퍼 Stand alone 설치하기
주키퍼 단일머신 멀티 인스턴스 설치하기





Share this

Related Posts

Previous
Next Post »