Ubuntu环境下手动配置zookeeper
配置zookeeper
注意:因为是单机伪分布式配置,故同一机器上有3个server
zookeeper文件格式如下
home---zookeeper---server0---zookeeper | ------------server1---zookeeper | ------------server2---zookeeper
1. 下载zookeeper(我用的是:zookeeper-3.4.6.tar.gz)
分别解压到/home/zookeeper/server0
/home/zookeeper/server1
/home/zookeeper/server2
2. 文件夹设置
分别在3个server中的zookeeper下生成logs和data文件夹
sudo mkdir data sudo mkdir logs //必须在每个server的zookeeper文件夹下
分别在3个server中的zookeeper/data下生成myid文件,再在打开的文件中分别写入0,1,2(server0中写0,server1中写1,server2中写2)
sudo gedit myid //生成myid文件,必须在data文件夹下
3. 配置zoo.cfg(配置的时候,注意dataDir的后面的地址不要带上多余的字符串!!!比如空格之类的。)
在zookeeper/conf文件夹中先生成这个空文件
sudo gedit zoo.cfg //必须在conf文件夹下
server0中的zoo.cfg填写内容
tickTime=2000 initLimit=5 syncLimit=2 dataDir=/home/zookeeper/server0/zookeeper/data dataLogDir=/home/zookeeper/server0/zookeeper/logs clientPort=2180 server.0=127.0.0.1:8880:7770 server.1=127.0.0.1:8881:7771 server.2=127.0.0.1:8882:7772
server1中的zoo.cfg填写内容
tickTime=2000 initLimit=5 syncLimit=2 dataDir=/home/zookeeper/server1/zookeeper/data dataLogDir=/home/zookeeper/server1/zookeeper/logs clientPort=2181 server.0=127.0.0.1:8880:7770 server.1=127.0.0.1:8881:7771 server.2=127.0.0.1:8882:7772
server2中的zoo.cfg填写内容
tickTime=2000 initLimit=5 syncLimit=2 dataDir=/home/zookeeper/server2/zookeeper/data dataLogDir=/home/zookeeper/server2/zookeeper/logs clientPort=2182 server.0=127.0.0.1:8880:7770 server.1=127.0.0.1:8881:7771 server.2=127.0.0.1:8882:7772
4. 启动所有的集群的服务器
分别进入三个服务器的/bin文件夹下:
sudo ./zkServer.sh start
5. 接入客户端
任意进入一个服务器的/bin文件夹下:
sudo ./zkCli.sh –server 127.0.0.1:2181
6. 结束
可以通过help来查询相关命令
keep moving...