1、下載源碼
官網下載地址: http://mirrors.hust.edu.cn/apache/zookeeper/ 選擇最新的版本進行下載
這里選擇3.4.10進行下載:
wget http://mirrors.hust.edu.cn/apache/zookeeper/zookeeper-3.4.10/zookeeper-3.4.10.tar.gz
下載完成后執行以下命令進行解壓:
tar -zxvf zookeeper-3.4.10.tar.gz
2、配置Zookeeper
解壓之后,在zookeeper目錄下創建以下目錄:
-
[fendo@localhost ~]$ cd zookeeper-3.4.10/
-
[fendo@localhost zookeeper-3.4.10]$ mkdir data
-
[fendo@localhost zookeeper-3.4.10]$ mkdir logs
將zookeeper-3.4.10/conf目錄下的zoo_sample.cfg文件拷貝一份,命名為zoo.cfg
[fendo@localhost conf]$ cp zoo_sample.cfg zoo.cfg
然后修改zoo.cfg文件
vim 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=/home/fendo/zookeeper-3.4.10/data
-
dataLogDir=/home/fendo/zookeeper-3.4.10/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
-
server.1=192.168.84.130:2888:3888
其中:
2888端口號是zookeeper服務之間通信的端口。
3888是zookeeper與其他應用程序通信的端口。
然后在dataDir=/home/fendo/zookeeper-3.4.10/data下創建myid文件(編輯myid文件,並在對應的IP的機器上輸入對應的編號。如在zookeeper上,myid 文件內容就是1。如果只在單點上進行安裝配置,那么只有一個server.1)
vim myid
fendo用戶下修改.bash_profile,增加zookeeper配置:
vim /home/fendo/.bash_profile
-
# zookeeper env export
-
ZOOKEEPER_HOME=/home/fendo/zookeeper-3.4.10 export
-
PATH=$ZOOKEEPER_HOME/bin:$PATH
使配置文件生效
source /home/fendo/.bash_profile
關閉防火牆
切換到root用戶下,執行以下命令:
systemctl stop firewalld.service
3、測試Zookeeper
啟動並測試zookeeper(要用普通用戶啟動,不要用root):
-
#使用fendo用戶到/home/fendo/zookeeper-3.4.10/bin目錄中執行
-
./zkServer.sh start
-
-
#查看進程
-
jps
-
-
其中,QuorumPeerMain是zookeeper進程,啟動正常。
-
-
#查看狀態
-
./zkServer.sh status
-
-
#服務器輸出信息
-
tail -500f zookeeper.out
-
-
#停止zookeeper進程
-
./zkServer.sh stop
設置zookeeper服務開機啟動
-
# 切換到/etc/rc.d/init.d/目錄下
-
cd /etc/rc.d/init.d
-
-
# 創建zookeeper文件
-
touch zookeeper
-
-
#更新權限
-
chmod +x zookeeper
-
-
#編輯文件,在zookeeper里面輸入如下內容
-
#!/bin/bash
-
#chkconfig:2345 20 90
-
#description:zookeeper
-
#processname:zookeeper
-
export JAVA_HOME=/user/local/java/jdk1.7.0_79
-
export PATH=$JAVA_HOME/bin:$PATH
-
case $1 in
-
start)su root /home/fendo/zookeeper-3.4.10/bin/zkServer.sh start;;
-
stop)su root /home/fendo/zookeeper-3.4.10/bin/zkServer.sh stop;;
-
status)su root /home/fendo/zookeeper-3.4.10/bin/zkServer.sh status;;
-
restart)su root /home/fendo/zookeeper-3.4.10/bin/zkServer.sh restart;;
-
*) echo "require start|stop|status|restart" ;;
-
esac
然后我們就可以用service zookeeper start/stop來啟動停止zookeeper服務了
使用命令把zookeeper添加到開機啟動里面
-
chkconfig zookeeper on
-
chkconfig --add zookeeper
添加完成之后接這個使用chkconfig --list 來看看我們添加的zookeeper是否在里面。