메뉴 건너뛰기

Cloudera, BigData, Semantic IoT, Hadoop, NoSQL

Cloudera CDH/CDP 및 Hadoop EcoSystem, Semantic IoT등의 개발/운영 기술을 정리합니다. gooper@gooper.com로 문의 주세요.


zookeeper zookeeper 3.4.6 설치(3대)

총관리자 2015.04.28 16:39 조회 수 : 1343

1. zookeeper다운로드

http://apache.mirror.cdnetworks.com/zookeeper/zookeeper-3.4.6/


2. 압축풀

tar xvfz zookeeper-3.4.6.tar.gz


3. soft link 생성

ln -s zookeeper-3.4.6 zookeeper


3-1 /data/zookeeper/data경로를 생성해준다.


3-1. log4j.properties수정(default가 . 이므로 zk서버 기동한곳에 생기게 되므로 /logs/zookeeper밑에 저장하도록 수정함)

#zookeeper.log.dir=.

zookeeper.log.dir=/logs/zookeeper/logs

#zookeeper.tracelog.dir=. 

zookeeper.tracelog.dir=/logs/zookeeper/logs


# DEFAULT: console appender only

log4j.rootLogger=${zookeeper.root.logger} 를 주석으로 막고


# Example with rolling log file and tracing

#log4j.rootLogger=TRACE, CONSOLE, ROLLINGFILE의 주석을 풀어준다.

(TRACEFILE은 로그파일 사이즈가 너무 커지므로 log를 기록하지 않도록 함)


4. conf/zoo.cfg수정

- cp zoo_sample.cfg zoo.cfg

- vi 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=/data/zookeeper/data

# 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=master:2888:3888

server.2=node1:2888:3888

server.3=node2:2888:3888

zookeeper.skipACL=true


# If the consumer fails to heartbeat to zookeeper for this period of time it is considered dead and a rebalance will occur

zookeeper.session.timeout.ms=20000


# The max time that the client waits while establishing a connection to zookeeper

zookeeper.connection.timeout.ms=20000

--------------------------------------


5. 다른 2개의 서버에 동일하게 반영

scp -r -P 22 zookeeper-3.4.6 root@node1:$HOME

scp -r -P 22 zookeeper-3.4.6 root@node2:$HOME

* 각서버에 들어가서 ln -s zookeeper-3.4.6 zookeeper실행으로 링크 생성


6. dataDir(예, /data/zookeeper/data)로 지정된 data폴더에 들어가서 myid라는 파일을 만들고 1 혹은 2 혹은 3을 내용으로 기록하고 저장한다.


7. 서버기동(각각의 서버에서 각각 실행 시킴)

[root@master bin]$ ./zkServer.sh start

JMX enabled by default

Using config: /usr/local/zookeeper/bin/../conf/zoo.cfg

Starting zookeeper ... STARTED

* 각각의 서버에서 각각 실행해야함

conf경로가 안맞에서 conf디렉토리를 bin밑으로 옮겨줌..


8. zk에 접속해서 값 확인

bin/zkCli.sh -server master:2181

위로