1、创建 /usr/local/services/zookeeper 文件夹:
mkdir -p /usr/local/services/zookeeper
2、进入到 /usr/local/services/zookeeper 目录中:
cd /usr/local/services/zookeeper
wget https://mirrors.tuna.tsinghua.edu.cn/apache/zookeeper/zookeeper-3.4.9/zookeeper-3.4.9.tar.gz
tar -zxvf zookeeper-3.4.9.tar.gz
5、进入到 /usr/local/services/zookeeper/zookeeper-3.4.9/conf 目录中:
6、复制 zoo_sample.cfg 文件的并命名为为 zoo.cfg:
7、用 vim 打开 zoo.cfg 文件并修改其内容为如下:
# The number of milliseconds of each tick
# The number of ticks that the initial
# synchronization phase can take
# The number of ticks that can pass between
# sending a request and getting an acknowledgement
# the directory where the snapshot is stored.
# do not use /tmp for storage, /tmp here is just
dataDir=/usr/local/services/zookeeper/zookeeper-3.4.9/data
dataLogDir=/usr/local/services/zookeeper/zookeeper-3.4.9/logs
# the port at which the clients will connect
# the maximum number of client connections.
# increase this if you need to handle more clients
# Be sure to read the maintenance section of the
# administrator guide before turning on autopurge.
# ZooKeeper: Because Coordinating Distributed Systems is a Zoo
# The number of snapshots to retain in dataDir
# Purge task interval in hours
# Set to "0" to disable auto purge feature
9、进入到 /usr/local/services/zookeeper/zookeeper-3.4.9/bin 目录中:
10、用 vim 打开 /etc/ 目录下的配置文件 profile:
# idea - zookeeper-3.4.9 config start - 2016-09-08
export ZOOKEEPER_HOME=/usr/local/services/zookeeper/zookeeper-3.4.9/
export PATH=$ZOOKEEPER_HOME/bin:$PATH
# idea - zookeeper-3.4.9 config start - 2016-09-08
11、使 /etc/ 目录下的 profile 文件即可生效:
ZooKeeper JMX enabled by default
Using config: /usr/local/services/zookeeper/zookeeper-3.4.9/bin/../conf/zoo.cfg
Starting zookeeper ... STARTED
ZooKeeper JMX enabled by default
Using config: /usr/local/services/zookeeper/zookeeper-3.4.9/bin/../conf/zoo.cfg
Stopping zookeeper ... STOPPED
ZooKeeper JMX enabled by default
Using config: /usr/local/services/zookeeper/zookeeper-3.4.9/bin/../conf/zoo.cfg
ZooKeeper JMX enabled by default
Using config: /usr/local/services/zookeeper/zookeeper-3.4.9/bin/../conf/zoo.cfg
Stopping zookeeper ... STOPPED
ZooKeeper JMX enabled by default
Using config: /usr/local/services/zookeeper/zookeeper-3.4.9/bin/../conf/zoo.cfg
Starting zookeeper ... STARTED
cp -r /usr/local/services/zookeeper/zookeeper-3.4.9/ /usr/local/services/zookeeper/zookeeper1
cp -r /usr/local/services/zookeeper/zookeeper-3.4.9/ /usr/local/services/zookeeper/zookeeper2
cp -r /usr/local/services/zookeeper/zookeeper-3.4.9/ /usr/local/services/zookeeper/zookeeper3
2.删除之前的/usr/local/services/zookeeper/zookeeper-3.4.9 ,以没用的zookeeper.
3. 分别在zookeepr集群机器上配置../conf/zoo.cfg属性:
# The number of milliseconds of each tick
# The number of ticks that the initial
# synchronization phase can take
# The number of ticks that can pass between
# sending a request and getting an acknowledgement
# the directory where the snapshot is stored.
# do not use /tmp for storage, /tmp here is just
dataDir=/usr/local/services/zookeeper/zookeeper1/data
dataLogDir=/usr/local/services/zookeeper/zookeeper1/logs
# the port at which the clients will connect
# the maximum number of client connections.
# increase this if you need to handle more clients
# 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
# Purge task interval in hours
# Set to "0" to disable auto purge feature
4.配置myid文件,在dataDir目录下新建myid文件并设置id号:
id号即为zoo.cfg文件中server.后的数字, 如:
server.1=127.0.0.1:2222:2225即表示本地机器中的myid号为1。
server.2=127.0.0.1:3333:3335即表示本地器中的myid号为2。
server.3=127.0.0.1:4444:4445即表示本地器中的myid号为3。
vim /usr/local/services/zookeeper/zookeeper1/data/myid , 输入1后保存
vim /usr/local/services/zookeeper/zookeeper2/data/myid , 输入2后保存
vim /usr/local/services/zookeeper/zookeeper3/data/myid , 输入3后保存
1 . 用 vim 打开 /etc/ 目录下的配置文件 profile:
# idea - zookeeper-3.4.9 config start - 2016-09-08
ZOOKEEPER_HOME1=/usr/local/services/zookeeper/zookeeper1/
ZOOKEEPER_HOME2=/usr/local/services/zookeeper/zookeeper2/
ZOOKEEPER_HOME3=/usr/local/services/zookeeper/zookeeper3/
PATH=$ZOOKEEPER_HOME1/bin:$ZOOKEEPER_HOME2/bin:$ZOOKEEPER_HOME3/bin:$PATH
# idea - zookeeper-3.4.9 config start - 2016-09-08
-A INPUT -m state --state NEW -m tcp -p tcp --dport 2181 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 2182 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 2183 -j ACCEPT
cd /usr/local/services/zookeeper/
./zookeeper1/bin/zkServer.sh start
./zookeeper2/bin/zkServer.sh start
./zookeeper3/bin/zkServer.sh start
注:一开始启动的时候会报错,提示连不上集群其他成员。此时是正常信息,等所有集群成员都启动后,该错误信息便会消失。
$ZOOKEEPER_HOME/bin/zkServer.sh status
[hadoop@mem2 zookeeper]$ bin/zkServer.sh status
Using config: /usr/local/zookeeper/bin/../conf/zoo.cfg