Zookeeper 서버 클러스터 구축

1. 구조, 총 3개 노드
zk 서버 집단 규모는 3개 노드보다 작지 않고 보통 홀수 개 노드이다.
2. zk를 서버에 업로드하고 zk를 압축 풀기
tar -zxvf  zookeeper-3.4.5.tar.gz
mv zookeeper-3.4.5 zookeeper


3. 환경 변수 수정
vi /etc/profile
#set zk
ZOOKEEPER_HOME=/usr/local/zookeeper
export PATH=$PATH:$ZOOKEEPER_HOME/bin

# 
source /etc/profile


4. zk의 프로필 수정
4.1 zookeeper에서 프로필 수정
cd /usr/local/zookeeper/conf
mv zoo_sample.cfg zoo.cfg


4.2 zoo를 수정합니다.cfg
vi zoo.cfg

# 
dataDir=/usr/local/zookeeper/data

# 
# 
server.0=192.168.2.116:2888:3888
server.1=192.168.2.103:2888:3888
server.2=192.168.2.105:2888:3888


4.3 각각의 zk 서버에서 서버 식별 설정
(zk 서버 3대가 각각 조작)
#   zoo.cfg   dataDir=/usr/local/zookerper/data 
cd /usr/local/zookeeper/data
# 
mkdir data
# myid 0:
vim  myid    (  : 0)

# zk 



5. zk 집단의 시작
# zk , 
/usr/local/zookeeper/bin
zkServer.sh start

#zk  ( zk mode, leader follower)
zkServer.sh status



6. zk에 관한zoo.cfg 프로필 소개
tickTime: 기본 이벤트 단위, 밀리초 단위.이 시간은 Zookeeper 서버 사이나 클라이언트와 서버 사이의 심장 박동을 유지하는 시간 간격입니다. 즉, tickTime 시간마다 심장 박동을 보냅니다.
DataDir: 메모리에 데이터베이스 스냅샷을 저장하는 위치는 말 그대로 Zookeeper가 데이터를 저장하는 디렉터리입니다. 기본적으로 Zookeeper는 데이터를 쓴 로그 파일도 이 디렉터리에 저장합니다.
clientPort: 이 포트는 클라이언트가 Zookeeper 서버에 연결하는 포트입니다. Zookeeper는 이 포트를 감청하고 클라이언트의 접근 요청을 받습니다.
initLimit: 이 설정 항목은 Zookeeper가 클라이언트의 초기화 연결을 받아들일 때 가장 긴 몇 개의 심장 박동 시간 간격을 견딜 수 있는지 설정하는 데 사용됩니다. 10개의 심장 박동 시간 (즉 tickTime) 이 긴 후에 Zookeeper 서버가 클라이언트의 반환 정보를 받지 못하면 이 클라이언트의 연결 실패를 나타냅니다.총 시간은 10*2000=20초입니다.
7. zk의 기본 조작
zkCli.sh  zookeeper 
zkCli.sh -server 192.168.2.103:2181
 :
 :ls / ls /zookeeper
 :create /bhz hadoop
 :get /bhz
 :set /bhz baihezhuo

좋은 웹페이지 즐겨찾기