201,229
1. 依赖:安装JDK1.6或者以上版本并设置环境变量。
2. 安装:解压到指定目录,即安装完成:tar -xvf zookeeper-3.3.6.tar.gz 必须的
3. cp conf/zoo_sample.cfg zoo.cfg
zoo.cfg内容:
tickTime=2000
dataDir=/tmp/zookeeper
dataLogDir=/tmp/zookeeper/log
clientPort=2181
initLimit=5
syncLimit=2
server.1=10.0.6.201:2888:3888
Server.2=10.0.6.229:2888:3888
说明:
dataDir:数据目录,不同的Zookeeper对应的目录可以不一样
dataLogDir:日志目录,不同的Zookeeper对应的目录可以不一样
clientPort:客户端连接时用到的端口,不同的Zookeeper对应的目录可以不一样
“server.1=127.0.0.1:6660:7770”表示集群中的服务器,其格式为:server.X=A:B:C,X是服务器标识ID,即其myid文件中的内容;A是该Zookeeper的IP,B是选主的端口;C是集群中各Zookeeper服务器间通信端口。
如果是伪zookeeper集群,数据目录,日志目录,三个端口都必须不一样,防止端口冲突。
10.0.6.229
4. ssh [email protected]
5. mkdir /home/zookeeper
6. mkdir /tmp/zookeeper
7. Echo "2" >/tmp/zookeeper/myid
8. service iptables stop
9. Exit
10.0.6.201
10. scp -r zookeeper-3.3.6/ [email protected]:/home/zookeeper
11. mkdir /tmp/zookeeper
12. Echo "1" >/tmp/zookeeper/myid
13. service iptables stop
14. cd /home/zookeeper/zookeeper-3.3.6/bin
15. ./zkServer.sh
16. ./zkServer.sh start
17. jps
18. ./zkServer.sh status
19. ./zkCli.sh -server 10.0.6.201:2181
20. ./zkCli.sh -server 10.0.6.229:2181
21. create /testzk testdata
22. get /testzk
23. ls /
24. quit
扩展一台服务器测试 227
201,229
cd /home/zookeeper/zookeeper-3.3.6/conf/
vim zoo.cfg
Server.3 = 10.0.6.227::2888:3888
scp -r zookeeper-3.3.6/ [email protected]:/home/zookeeper
227
echo "3" >/tmp/zookeeper/myid
测试
201,227,229
cd /home/zookeeper/zookeeper-3.3.6/bin
./zkServer.sh
./zkServer.sh restart
./zkServer.sh status
小结:不科学啊,这样原有的zookeeper不就停止服务了吗。。。
25. tar -xvf zookeeper-3.3.6.tar.gz
26. cd zookeeper-3.3.6/src/c
27. cd /home/libi/zookeeper/zookeeper-3.3.6/src/c
28. ./configure --prefix=/home/libi/zookeeper //否则在/usr/local一定要经过这一步生成客户端环境,否则得在运行客户端代码的机器上,加载so文件(动态链接库)的路径
29. Make
30. Make install
31. Cd /usr/local
32. 生成了so文件
33. cp -r lib/libzookeeper.so.2 /home/libi //把动态链接库拷到当前测试代码目录下
34. gcc -g -o zkcli zkcli.c -I /usr/local/include/zookeeper -L /usr/local/lib-lzookeeper_mt
35. gcc -g -o zkcli zkcli.c -I /usr/local/include/zookeeper -L .-lzookeeper_mt
36. gcc zkcli.c -o zkcli -I . -lzookeeper_mt