(1)下载Zookeeper-3.4.6.tar.gz 地址http://www.apache.org/dist/zookeeper/
(2) 我们放到Linux下的一个文件夹,然后解压:
#tar zxvf zookeeper-3.4.6.tar.gz
(3)然后在对应的zookeeper-3.4.6/conf 下有一个文件zoo_sample.cfg的这个文件里面配置了监听客户端连接的端口等一些信息,Zookeeper 在启动时会找zoo.cfg这个文件作为默认配置文件,所以我们复制一个名称为zoo.cfg
[root@slave conf]# cp zoo_sample.cfg zoo.cfg
[root@slave conf]# vi zoo.cfg
tickTime=2000
dataDir=/tmp/zookeeper
clientPort=2181
initLimit=5
syncLimit=2
server.1=master:2888:3888
server.2=slave:2888:3888
server.3=LVS:2888:3888
echo "1" > /tmp/zookeeper/myid
server.X 这个数字就是对应/tmp/zookeeper/myid中的数字。你在3个server的myid文件中分别写入了1,2,3,那么每个server中的zoo.cfg都配 server.1,server.2,server.3就OK了
依上配置其余2个zoo.cfg
myid文件缺失
现象 :zookeeper无法启动;
异常 :$dataDir/myid file is missing;
原因 :zk集群中的节点需要获取myid文件内容来标识该节点,缺失则无法启动;
解决 :在zk数据文件存放目录下(见 $ZK/conf/zoo.cfg,dataDir属性),创建myid文件并写入一个数字用来标识本节点(类似这个节点的身份证)。
[root@slave bin]# ./zkServer.sh start
JMX enabled by default
Using config: /usr/zookeeper-3.4.6/bin/../conf/zoo.cfg
Starting zookeeper ... STARTED
[root@slave bin]# ./zkServer.sh status
JMX enabled by default
Using config: /usr/zookeeper-3.4.6/bin/../conf/zoo.cfg
Mode: leader
增加内存修改zkEnv.sh
#在文件底部增加
export JVMFLAGS="-Xms1024m -Xmx2048m $JVMFLAGS"