useradd -g zookeeper zookeeper
# The number of milliseconds of each tick
tickTime=2000
# The number of ticks that the initial.synchronization phase can take
# 처음 zookeeper의 fllower가 leader 와의 연결 시도시 tick 횟수. 이 값을 넘으면 timeout.
initLimit=10
# The number of ticks that can pass between sending a request and getting an acknowledgement
# 앙상블 내에서 leader-follower 간 동기화 tick.
syncLimit=5
# the directory where the snapshot is stored.
# Zookeeper 상태, 스냅샷, 트랜잭션 로그 등을 저장하고 업데이터 하는 디렉토리 (/tmp는 사용하지 않는다)
dataDir=/home/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
# 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
## Metrics Providers
#metricsProvider.className=org.apache.zookeeper.metrics.prometheus.PrometheusMetricsProvider
#metricsProvider.httpPort=7000
#metricsProvider.exportJvmInfo=true
admin.serverPort=48081
#앙상블을 이루기 위한 서버들 목록.
#서버번소=서버호스트:동기화포트:leader선출을 위한 포트
server.1=dist01.haedongg.net:2888:3888
server.2=dist02.haedongg.net:2888:3888
server.3=dist03.haedongg.net:2888:3888
echo 1 > /home/zookeeper/data/myid
sh dist02.encore.rnd 'echo 2 > /home/zookeeper/data/myid'
ssh dist03.encore.rnd 'echo 2 > /home/zookeeper/data/myid'
#직접 해당 서버에 접속하여 변경해도 무방하다.
admin.enableServer=true
admin.serverPort=8000
admin.commandURL=/commands
/home/zookeeper/bin/zkEnv.sh
# zookeeper home 지정
ZOOKEEPER_HOME=/home/zookeeper
# zookeeper bin 디렉토리 지정
ZOOBINDIR=$ZOOKEEPER_HOME/bin
# zookeeper 설정 디렉토리 지정
# 이 값이 없으면 zookeeper 구동 시 --config 옵션으로 설정 파일의 경로를 지정 해 줘야 한다.
ZOOCFGDIR=$ZOOKEEPER_HOME/conf
ZOOKEEPER_PREFIX="${ZOOBINDIR}/.."
... 후략 ...
$ZOOKEEPER_HOME/bin/zkServer.sh start
ssh dist02.haedongg.net '/home/zookeeper/bin/zkServer.sh start'
ssh dist03.haedongg.net '/home/zookeeper/bin/zkServer.sh start'
#각 서버에 접속하여 명령을 수행할 수 있다.