一. 單機安裝、配置:
1. 下載zookeeper二進制安裝包
下載地址:http://apache.dataguru.cn/zookeeper/zookeeper-3.4.3/zookeeper-3.4.3.tar.gz
上面地址應該已經失效 最新地址是http://mirrors.hust.edu.cn/apache/zookeeper/zookeeper-3.4.9/
2.解壓zookeeper安裝包
把zookeeper-3.4.3.tar.gz文件存放在/home/hadoop目錄下,進行解壓:
hadoop@ubuntu:~$ sudo tar -zxvf zookeeper-3.4.3.tar.gz
hadoop@ubuntu:~$ chown -R hadoop:hadoop zookeeper-3.4.3
或者zookeeper在線安裝 地址已經改變而且需要click 才能下載所以不推薦用在線wget
hadoop@ubuntu:~$ wget http://www.apache.org/dist/zookeeper/zookeeper-3.3.3/zookeeper-3.3.3.tar.gz
hadoop@ubuntu:~$ tar zxvf zookeeper-3.3.3.tar.gz
3.設置環境變量
在/etc/profile,/home/hadoop/.bashrc文件中添加如下紅色信息 這句話原文有點問題 我使用來看就是 vi /etc/profile
#set java environment
ZOOKEEPER_HOME=/home/hadoop/zookeeper-3.4.3
MAHOUT_HOME=/home/hadoop/mahout-distribution-0.7
PIG_HOME=/home/hadoop/pig-0.9.2
HBASE_HOME=/home/hadoop/hbase-0.94.3
HIVE_HOME=/home/hadoop/hive-0.9.0
HADOOP_HOME=/home/hadoop/hadoop-1.1.1
JAVA_HOME=/home/hadoop/jdk1.7.0
PATH=$JAVA_HOME/bin:$ZOOKEEPER_HOME/bin:$PIG_HOME/bin:$MAHOUT_HOME/bin:$HBASE_HOME/bin:$HIVE_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/conf:$PATH
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$ZOOKEEPER_HOME/lib:$HBASE_HOME/lib:$MAHOUT_HOME/lib:$PIG_HOME/lib:$HIVE_HOME/lib:$JAVA_HOME/lib/tools.jar
export ZOOKEEPER_HOME
export MAHOUT_HOME
export PIG_HOME
export HBASE_HOME
export HADOOP_HOME
export JAVA_HOME
export HIVE_HOME
export PATH
export CLASSPATH
4.配置
配置文件存放在$ZOOKEEPER_HOME/conf/目錄下,將zoo_sample.cfd文件名稱改為zoo.cfg, 缺省的配置內容如下: 下面這篇 需要注意的是不能有注釋 不然 data后面 新建文件夾就會帶上注釋 導致zookeeper服務起不來 (底部我會介紹排錯過程)
# 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/hadoop/zookeeper-3.4.3/data
# the port at which the clients will connect
clientPort=2181
#
# 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
注意點:
dataDir=/home/hadoop/zookeeper-3.4.3/data后面不能有空格其次是 后面不能跟注釋 不然創建的文件夾名字是 data#注釋
配置說明:
tickTime:這個時間是作為 Zookeeper 服務器之間或客戶端與服務器之間維持心跳的時間間隔,也就是每個 tickTime 時間就會發送一個心跳。
dataDir:顧名思義就是 Zookeeper 保存數據的目錄,默認情況下,Zookeeper 將寫數據的日志文件也保存在這個目錄里。
clientPort:這個端口就是客戶端連接 Zookeeper 服務器的端口,Zookeeper 會監聽這個端口,接受客戶端的訪問請求。
5.啟動zookeeper
當這些配置項配置好后,你現在就可以啟動zookeeper了:
hadoop@ubuntu:~/ netstat -at|grep 2181 #查看zookeeper端口
hadoop@ubuntu:~/ netstat -nat #查看端口信息
hadoop@ubuntu:~/zookeeper-3.4.3/bin$ ./zkServer.sh start #啟動
hadoop@ubuntu:~/zookeeper-3.4.3/bin$ jps #查看啟動的服務名稱
hadoop@ubuntu:~/zookeeper-3.4.3/bin$ ./zkServer.sh stop #關閉
zkServer.sh start-foreground 查看日志
啟動后要檢查 Zookeeper 是否已經在服務,可以通過 netstat -at|grep 2181 命令查看是否有 clientPort 端口號在監聽服務。
這里補充下ZooKeeper如果服務起不來的排查 http://www.myexception.cn/open-source/1906016.html
二. 集群安裝、配置:
ZooKeeper集群搭建點擊此處
